From 9bcb4f9971e055834f5efa6e243e811bd256f201 Mon Sep 17 00:00:00 2001
From: OpenStack Proposal Bot <openstack-infra@lists.openstack.org>
Date: Sun, 18 May 2014 06:15:05 +0000
Subject: [PATCH] Imported Translations from Transifex

Change-Id: I91f80dd98e0c18492060ff1eca7ed9544a326797
---
 cinder/locale/am_ET/LC_MESSAGES/cinder.po | 11722 ++++++++++++++++++++
 cinder/locale/ar/LC_MESSAGES/cinder.po    |  1182 +-
 cinder/locale/bg_BG/LC_MESSAGES/cinder.po |  1182 +-
 cinder/locale/bn_IN/LC_MESSAGES/cinder.po |  1182 +-
 cinder/locale/bs/LC_MESSAGES/cinder.po    |  1234 ++-
 cinder/locale/ca/LC_MESSAGES/cinder.po    |  1184 +-
 cinder/locale/cinder.pot                  |  1176 +-
 cinder/locale/cs/LC_MESSAGES/cinder.po    |  1672 +--
 cinder/locale/da/LC_MESSAGES/cinder.po    |  1233 +-
 cinder/locale/de/LC_MESSAGES/cinder.po    |  2578 +++--
 cinder/locale/el/LC_MESSAGES/cinder.po    |  1178 +-
 cinder/locale/en_AU/LC_MESSAGES/cinder.po |  1633 +--
 cinder/locale/en_GB/LC_MESSAGES/cinder.po |  2603 +++--
 cinder/locale/en_US/LC_MESSAGES/cinder.po |  1178 +-
 cinder/locale/es/LC_MESSAGES/cinder.po    |  2718 +++--
 cinder/locale/es_MX/LC_MESSAGES/cinder.po |  1199 +-
 cinder/locale/eu/LC_MESSAGES/cinder.po    |  1182 +-
 cinder/locale/eu_ES/LC_MESSAGES/cinder.po |  1174 +-
 cinder/locale/fa/LC_MESSAGES/cinder.po    |  1180 +-
 cinder/locale/fi_FI/LC_MESSAGES/cinder.po |  1182 +-
 cinder/locale/fil/LC_MESSAGES/cinder.po   |  1182 +-
 cinder/locale/fr/LC_MESSAGES/cinder.po    |  2684 +++--
 cinder/locale/gl/LC_MESSAGES/cinder.po    |  1182 +-
 cinder/locale/he/LC_MESSAGES/cinder.po    |  1178 +-
 cinder/locale/he_IL/LC_MESSAGES/cinder.po |  1178 +-
 cinder/locale/hi/LC_MESSAGES/cinder.po    |  1182 +-
 cinder/locale/hr/LC_MESSAGES/cinder.po    |  1184 +-
 cinder/locale/hu/LC_MESSAGES/cinder.po    |  1186 +-
 cinder/locale/id/LC_MESSAGES/cinder.po    |  1180 +-
 cinder/locale/is_IS/LC_MESSAGES/cinder.po |  1182 +-
 cinder/locale/it/LC_MESSAGES/cinder.po    |  2599 +++--
 cinder/locale/it_IT/LC_MESSAGES/cinder.po |  1180 +-
 cinder/locale/ja/LC_MESSAGES/cinder.po    |  2654 +++--
 cinder/locale/ka_GE/LC_MESSAGES/cinder.po |  1184 +-
 cinder/locale/km/LC_MESSAGES/cinder.po    |  1180 +-
 cinder/locale/kn/LC_MESSAGES/cinder.po    |  1182 +-
 cinder/locale/ko/LC_MESSAGES/cinder.po    |  1174 +-
 cinder/locale/ko_KR/LC_MESSAGES/cinder.po |  2512 +++--
 cinder/locale/ml_IN/LC_MESSAGES/cinder.po |  1180 +-
 cinder/locale/mr_IN/LC_MESSAGES/cinder.po |  1182 +-
 cinder/locale/ms/LC_MESSAGES/cinder.po    |  1180 +-
 cinder/locale/nb/LC_MESSAGES/cinder.po    |  1212 +-
 cinder/locale/ne/LC_MESSAGES/cinder.po    |  1182 +-
 cinder/locale/nl_NL/LC_MESSAGES/cinder.po |  1184 +-
 cinder/locale/pa_IN/LC_MESSAGES/cinder.po |  1180 +-
 cinder/locale/pl_PL/LC_MESSAGES/cinder.po |  1202 +-
 cinder/locale/pt/LC_MESSAGES/cinder.po    |  1254 ++-
 cinder/locale/pt_BR/LC_MESSAGES/cinder.po |  2671 +++--
 cinder/locale/ro/LC_MESSAGES/cinder.po    |  1180 +-
 cinder/locale/ru/LC_MESSAGES/cinder.po    |  1766 +--
 cinder/locale/ru_RU/LC_MESSAGES/cinder.po |  1174 +-
 cinder/locale/sk/LC_MESSAGES/cinder.po    |  1182 +-
 cinder/locale/sl_SI/LC_MESSAGES/cinder.po |  1180 +-
 cinder/locale/sq/LC_MESSAGES/cinder.po    |  1178 +-
 cinder/locale/sr/LC_MESSAGES/cinder.po    |  1194 +-
 cinder/locale/sv/LC_MESSAGES/cinder.po    |  1180 +-
 cinder/locale/sw_KE/LC_MESSAGES/cinder.po |  1174 +-
 cinder/locale/ta/LC_MESSAGES/cinder.po    |  1178 +-
 cinder/locale/te_IN/LC_MESSAGES/cinder.po |  1178 +-
 cinder/locale/tl/LC_MESSAGES/cinder.po    |  1215 +-
 cinder/locale/tl_PH/LC_MESSAGES/cinder.po |  1174 +-
 cinder/locale/tr/LC_MESSAGES/cinder.po    |  1174 +-
 cinder/locale/tr_TR/LC_MESSAGES/cinder.po |  1423 +--
 cinder/locale/uk/LC_MESSAGES/cinder.po    |  1267 ++-
 cinder/locale/ur/LC_MESSAGES/cinder.po    |  1180 +-
 cinder/locale/vi_VN/LC_MESSAGES/cinder.po |  1221 +-
 cinder/locale/zh_CN/LC_MESSAGES/cinder.po |  2663 ++---
 cinder/locale/zh_HK/LC_MESSAGES/cinder.po |  1182 +-
 cinder/locale/zh_TW/LC_MESSAGES/cinder.po |  2565 +++--
 69 files changed, 65109 insertions(+), 43501 deletions(-)
 create mode 100644 cinder/locale/am_ET/LC_MESSAGES/cinder.po

diff --git a/cinder/locale/am_ET/LC_MESSAGES/cinder.po b/cinder/locale/am_ET/LC_MESSAGES/cinder.po
new file mode 100644
index 000000000..3cb621b27
--- /dev/null
+++ b/cinder/locale/am_ET/LC_MESSAGES/cinder.po
@@ -0,0 +1,11722 @@
+# Amharic (Ethiopia) translations for cinder.
+# Copyright (C) 2014 ORGANIZATION
+# This file is distributed under the same license as the cinder project.
+#
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version:  Cinder\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2013-08-30 09:12+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Amharic (Ethiopia) "
+"(http://www.transifex.com/projects/p/cinder/language/am_ET/)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 1.3\n"
+
+#: cinder/context.py:63
+#, python-format
+msgid "Arguments dropped when creating context: %s"
+msgstr ""
+
+#: cinder/context.py:107
+#, python-format
+msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
+msgstr ""
+
+#: cinder/exception.py:66 cinder/brick/exception.py:31
+msgid "An unknown exception occurred."
+msgstr ""
+
+#: cinder/exception.py:88
+msgid "Exception in string format operation"
+msgstr ""
+
+#: cinder/exception.py:107
+#, python-format
+msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
+msgstr ""
+
+#: cinder/exception.py:112
+#, python-format
+msgid "Volume driver reported an error: %(message)s"
+msgstr ""
+
+#: cinder/exception.py:116
+#, python-format
+msgid "Backup driver reported an error: %(message)s"
+msgstr ""
+
+#: cinder/exception.py:120
+#, python-format
+msgid "Connection to glance failed: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:124
+msgid "Not authorized."
+msgstr ""
+
+#: cinder/exception.py:129
+msgid "User does not have admin privileges"
+msgstr ""
+
+#: cinder/exception.py:133
+#, python-format
+msgid "Policy doesn't allow %(action)s to be performed."
+msgstr ""
+
+#: cinder/exception.py:137
+#, python-format
+msgid "Not authorized for image %(image_id)s."
+msgstr ""
+
+#: cinder/exception.py:141
+msgid "Volume driver not ready."
+msgstr ""
+
+#: cinder/exception.py:145 cinder/brick/exception.py:77
+msgid "Unacceptable parameters."
+msgstr ""
+
+#: cinder/exception.py:150
+#, python-format
+msgid "Invalid snapshot: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:154
+#, python-format
+msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
+msgstr ""
+
+#: cinder/exception.py:159
+#, python-format
+msgid "Volume %(volume_id)s is still attached, detach volume first."
+msgstr ""
+
+#: cinder/exception.py:163
+msgid "Failed to load data into json format"
+msgstr ""
+
+#: cinder/exception.py:167
+msgid "The results are invalid."
+msgstr ""
+
+#: cinder/exception.py:171
+#, python-format
+msgid "Invalid input received: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:175
+#, python-format
+msgid "Invalid volume type: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:179
+#, python-format
+msgid "Invalid volume: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:183
+#, python-format
+msgid "Invalid content type %(content_type)s."
+msgstr ""
+
+#: cinder/exception.py:187
+#, python-format
+msgid "Invalid host: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:193 cinder/brick/exception.py:84
+#, python-format
+msgid "%(err)s"
+msgstr ""
+
+#: cinder/exception.py:197
+#, python-format
+msgid "Invalid auth key: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:201
+#, python-format
+msgid "Value \"%(value)s\" is not valid for configuration option \"%(option)s\""
+msgstr ""
+
+#: cinder/exception.py:206
+msgid "Service is unavailable at this time."
+msgstr ""
+
+#: cinder/exception.py:210
+#, python-format
+msgid "Image %(image_id)s is unacceptable: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:214
+#, python-format
+msgid "The device in the path %(path)s is unavailable: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:218
+#, python-format
+msgid "Expected a uuid but received %(uuid)s."
+msgstr ""
+
+#: cinder/exception.py:222 cinder/brick/exception.py:71
+msgid "Resource could not be found."
+msgstr ""
+
+#: cinder/exception.py:228
+#, python-format
+msgid "Volume %(volume_id)s could not be found."
+msgstr ""
+
+#: cinder/exception.py:232
+#, python-format
+msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
+msgstr ""
+
+#: cinder/exception.py:237
+#, python-format
+msgid ""
+"Volume %(volume_id)s has no administration metadata with key "
+"%(metadata_key)s."
+msgstr ""
+
+#: cinder/exception.py:242
+#, python-format
+msgid "Invalid metadata: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:246
+#, python-format
+msgid "Invalid metadata size: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:250
+#, python-format
+msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
+msgstr ""
+
+#: cinder/exception.py:255
+#, python-format
+msgid "Volume type %(volume_type_id)s could not be found."
+msgstr ""
+
+#: cinder/exception.py:259
+#, python-format
+msgid "Volume type with name %(volume_type_name)s could not be found."
+msgstr ""
+
+#: cinder/exception.py:264
+#, python-format
+msgid ""
+"Volume Type %(volume_type_id)s has no extra specs with key "
+"%(extra_specs_key)s."
+msgstr ""
+
+#: cinder/exception.py:269
+#, python-format
+msgid ""
+"Volume Type %(volume_type_id)s deletion is not allowed with volumes "
+"present with the type."
+msgstr ""
+
+#: cinder/exception.py:274
+#, python-format
+msgid "Snapshot %(snapshot_id)s could not be found."
+msgstr ""
+
+#: cinder/exception.py:278
+#, python-format
+msgid "deleting volume %(volume_name)s that has snapshot"
+msgstr ""
+
+#: cinder/exception.py:282
+#, python-format
+msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
+msgstr ""
+
+#: cinder/exception.py:287
+#, python-format
+msgid "No target id found for volume %(volume_id)s."
+msgstr ""
+
+#: cinder/exception.py:291
+#, python-format
+msgid "Invalid image href %(image_href)s."
+msgstr ""
+
+#: cinder/exception.py:295
+#, python-format
+msgid "Image %(image_id)s could not be found."
+msgstr ""
+
+#: cinder/exception.py:299
+#, python-format
+msgid "Service %(service_id)s could not be found."
+msgstr ""
+
+#: cinder/exception.py:303
+#, python-format
+msgid "Host %(host)s could not be found."
+msgstr ""
+
+#: cinder/exception.py:307
+#, python-format
+msgid "Scheduler Host Filter %(filter_name)s could not be found."
+msgstr ""
+
+#: cinder/exception.py:311
+#, python-format
+msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
+msgstr ""
+
+#: cinder/exception.py:315
+#, python-format
+msgid "Could not find binary %(binary)s on host %(host)s."
+msgstr ""
+
+#: cinder/exception.py:319
+#, python-format
+msgid "Invalid reservation expiration %(expire)s."
+msgstr ""
+
+#: cinder/exception.py:323
+#, python-format
+msgid ""
+"Change would make usage less than 0 for the following resources: "
+"%(unders)s"
+msgstr ""
+
+#: cinder/exception.py:328
+msgid "Quota could not be found"
+msgstr ""
+
+#: cinder/exception.py:332
+#, python-format
+msgid "Unknown quota resources %(unknown)s."
+msgstr ""
+
+#: cinder/exception.py:336
+#, python-format
+msgid "Quota for project %(project_id)s could not be found."
+msgstr ""
+
+#: cinder/exception.py:340
+#, python-format
+msgid "Quota class %(class_name)s could not be found."
+msgstr ""
+
+#: cinder/exception.py:344
+#, python-format
+msgid "Quota usage for project %(project_id)s could not be found."
+msgstr ""
+
+#: cinder/exception.py:348
+#, python-format
+msgid "Quota reservation %(uuid)s could not be found."
+msgstr ""
+
+#: cinder/exception.py:352
+#, python-format
+msgid "Quota exceeded for resources: %(overs)s"
+msgstr ""
+
+#: cinder/exception.py:356
+#, python-format
+msgid "File %(file_path)s could not be found."
+msgstr ""
+
+#: cinder/exception.py:365
+#, python-format
+msgid "Volume Type %(id)s already exists."
+msgstr ""
+
+#: cinder/exception.py:369
+#, python-format
+msgid "Volume type encryption for type %(type_id)s already exists."
+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 ""
+
+#: cinder/exception.py:381
+#, python-format
+msgid "Could not find config at %(path)s"
+msgstr ""
+
+#: cinder/exception.py:385
+#, python-format
+msgid "Could not find parameter %(param)s"
+msgstr ""
+
+#: cinder/exception.py:389
+#, python-format
+msgid "Could not load paste app '%(name)s' from %(path)s"
+msgstr ""
+
+#: cinder/exception.py:393
+#, python-format
+msgid "No valid host was found. %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:402
+#, python-format
+msgid "Quota exceeded: code=%(code)s"
+msgstr ""
+
+#: cinder/exception.py:409
+#, python-format
+msgid ""
+"Requested volume or snapshot exceeds allowed Gigabytes quota. Requested "
+"%(requested)sG, quota is %(quota)sG and %(consumed)sG has been consumed."
+msgstr ""
+
+#: cinder/exception.py:415
+#, python-format
+msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
+msgstr ""
+
+#: cinder/exception.py:419
+#, python-format
+msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
+msgstr ""
+
+#: cinder/exception.py:423
+#, python-format
+msgid "Detected more than one volume with name %(vol_name)s"
+msgstr ""
+
+#: cinder/exception.py:427
+#, python-format
+msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
+msgstr ""
+
+#: cinder/exception.py:432
+#, python-format
+msgid "Unknown or unsupported command %(cmd)s"
+msgstr ""
+
+#: cinder/exception.py:436
+#, python-format
+msgid "Malformed response to command %(cmd)s: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:440
+#, python-format
+msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
+msgstr ""
+
+#: cinder/exception.py:444
+#, python-format
+msgid ""
+"Glance metadata cannot be updated, key %(key)s exists for volume id "
+"%(volume_id)s"
+msgstr ""
+
+#: cinder/exception.py:449
+#, python-format
+msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
+msgstr ""
+
+#: cinder/exception.py:453
+#, python-format
+msgid "Failed to export for volume: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:457
+#, python-format
+msgid "Failed to create metadata for volume: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:461
+#, python-format
+msgid "Failed to update metadata for volume: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:465
+#, python-format
+msgid "Failed to copy metadata to volume: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:469
+#, python-format
+msgid "Failed to copy image to volume: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:473
+msgid "Invalid Ceph args provided for backup rbd operation"
+msgstr ""
+
+#: cinder/exception.py:477
+msgid "An error has occurred during backup operation"
+msgstr ""
+
+#: cinder/exception.py:481
+msgid "Unsupported backup metadata version requested"
+msgstr ""
+
+#: cinder/exception.py:485
+msgid "Metadata backup already exists for this volume"
+msgstr ""
+
+#: cinder/exception.py:489
+msgid "Backup RBD operation failed"
+msgstr ""
+
+#: cinder/exception.py:493
+#, python-format
+msgid "Backup %(backup_id)s could not be found."
+msgstr ""
+
+#: cinder/exception.py:497
+msgid "Failed to identify volume backend."
+msgstr ""
+
+#: cinder/exception.py:501
+#, python-format
+msgid "Invalid backup: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:505
+#, python-format
+msgid "Connection to swift failed: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:509
+#, python-format
+msgid "Transfer %(transfer_id)s could not be found."
+msgstr ""
+
+#: cinder/exception.py:513
+#, python-format
+msgid "Volume migration failed: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:517
+#, python-format
+msgid "SSH command injection detected: %(command)s"
+msgstr ""
+
+#: cinder/exception.py:521
+#, python-format
+msgid "QoS Specs %(specs_id)s already exists."
+msgstr ""
+
+#: cinder/exception.py:525
+#, python-format
+msgid "Failed to create qos_specs: %(name)s with specs %(qos_specs)s."
+msgstr ""
+
+#: cinder/exception.py:530
+#, python-format
+msgid "Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s."
+msgstr ""
+
+#: cinder/exception.py:535
+#, python-format
+msgid "No such QoS spec %(specs_id)s."
+msgstr ""
+
+#: cinder/exception.py:539
+#, python-format
+msgid "Failed to associate qos_specs: %(specs_id)s with type %(type_id)s."
+msgstr ""
+
+#: cinder/exception.py:544
+#, python-format
+msgid "Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s."
+msgstr ""
+
+#: cinder/exception.py:549
+#, python-format
+msgid "QoS spec %(specs_id)s has no spec with key %(specs_key)s."
+msgstr ""
+
+#: cinder/exception.py:554
+#, python-format
+msgid "Invalid qos specs: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:558
+#, python-format
+msgid "QoS Specs %(specs_id)s is still associated with entities."
+msgstr ""
+
+#: cinder/exception.py:562
+#, python-format
+msgid "key manager error: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:566
+#, python-format
+msgid ""
+"Manage existing volume failed due to invalid backend reference "
+"%(existing_ref)s: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:571
+#, python-format
+msgid "Manage existing volume failed due to volume type mismatch: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:578
+msgid "Coraid Cinder Driver exception."
+msgstr ""
+
+#: cinder/exception.py:582
+msgid "Failed to encode json data."
+msgstr ""
+
+#: cinder/exception.py:586
+msgid "Login on ESM failed."
+msgstr ""
+
+#: cinder/exception.py:590
+msgid "Relogin on ESM failed."
+msgstr ""
+
+#: cinder/exception.py:594
+#, python-format
+msgid "Group with name \"%(group_name)s\" not found."
+msgstr ""
+
+#: cinder/exception.py:598
+#, python-format
+msgid "ESM configure request failed: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:602
+#, python-format
+msgid "Coraid ESM not available with reason: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:607
+msgid "Zadara Cinder Driver exception."
+msgstr ""
+
+#: cinder/exception.py:611
+#, python-format
+msgid "Unable to create server object for initiator %(name)s"
+msgstr ""
+
+#: cinder/exception.py:615
+#, python-format
+msgid "Unable to find server object for initiator %(name)s"
+msgstr ""
+
+#: cinder/exception.py:619
+msgid "Unable to find any active VPSA controller"
+msgstr ""
+
+#: cinder/exception.py:623
+#, python-format
+msgid "Failed to retrieve attachments for volume %(name)s"
+msgstr ""
+
+#: cinder/exception.py:627
+#, python-format
+msgid "Invalid attachment info for volume %(name)s: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:631
+#, python-format
+msgid "Bad HTTP response status %(status)s"
+msgstr ""
+
+#: cinder/exception.py:636
+msgid "Bad response from SolidFire API"
+msgstr ""
+
+#: cinder/exception.py:640
+msgid "SolidFire Cinder Driver exception"
+msgstr ""
+
+#: cinder/exception.py:644
+#, python-format
+msgid "Error in SolidFire API response: data=%(data)s"
+msgstr ""
+
+#: cinder/exception.py:648
+#, python-format
+msgid "Unable to locate account %(account_name)s on Solidfire device"
+msgstr ""
+
+#: cinder/exception.py:654
+#, python-format
+msgid "Invalid 3PAR Domain: %(err)s"
+msgstr ""
+
+#: cinder/exception.py:659
+msgid "Unknown NFS exception"
+msgstr ""
+
+#: cinder/exception.py:663
+msgid "No mounted NFS shares found"
+msgstr ""
+
+#: cinder/exception.py:667 cinder/exception.py:680
+#, python-format
+msgid "There is no share which can host %(volume_size)sG"
+msgstr ""
+
+#: cinder/exception.py:672
+msgid "Unknown Gluster exception"
+msgstr ""
+
+#: cinder/exception.py:676
+msgid "No mounted Gluster shares found"
+msgstr ""
+
+#: cinder/exception.py:684
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:689
+msgid "HP MSA Volume Driver exception"
+msgstr ""
+
+#: cinder/exception.py:693
+#, python-format
+msgid "VDisk doesn't exist (%(vdisk)s)"
+msgstr ""
+
+#: cinder/exception.py:697
+msgid "Unable to connect to MSA array"
+msgstr ""
+
+#: cinder/exception.py:701
+#, python-format
+msgid "Not enough space on VDisk (%(vdisk)s)"
+msgstr ""
+
+#: cinder/exception.py:706
+#, python-format
+msgid "Fibre Channel connection control failure: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:710
+#, python-format
+msgid "Fibre Channel Zone operation failed: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:714
+#, python-format
+msgid "Fibre Channel SAN Lookup failure: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:718
+#, python-format
+msgid "Fibre Channel Zoning CLI error: %(reason)s"
+msgstr ""
+
+#: cinder/exception.py:722
+msgid "NetApp Cinder Driver exception."
+msgstr ""
+
+#: cinder/manager.py:128
+msgid "Notifying Schedulers of capabilities ..."
+msgstr ""
+
+#: cinder/policy.py:30
+msgid "JSON file representing policy"
+msgstr ""
+
+#: cinder/policy.py:33
+msgid "Rule checked when requested rule is not found"
+msgstr ""
+
+#: cinder/quota.py:106
+#, python-format
+msgid ""
+"Default quota for resource: %(res)s is set by the default quota flag: "
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
+msgstr ""
+
+#: cinder/quota.py:749
+#, python-format
+msgid "Created reservations %s"
+msgstr ""
+
+#: cinder/quota.py:771
+#, python-format
+msgid "Failed to commit reservations %s"
+msgstr ""
+
+#: cinder/quota.py:791
+#, python-format
+msgid "Failed to roll back reservations %s"
+msgstr ""
+
+#: cinder/quota.py:875
+msgid "Cannot register resource"
+msgstr ""
+
+#: cinder/quota.py:878
+msgid "Cannot register resources"
+msgstr ""
+
+#: cinder/quota_utils.py:46
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to create %(s_size)sG volume - "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)"
+msgstr ""
+
+#: cinder/quota_utils.py:56 cinder/transfer/api.py:168
+#: cinder/volume/flows/api/create_volume.py:520
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to create volume (%(d_consumed)d "
+"volumes already consumed)"
+msgstr ""
+
+#: cinder/service.py:99
+#, python-format
+msgid "Starting %(topic)s node (version %(version_string)s)"
+msgstr ""
+
+#: cinder/service.py:112
+#, python-format
+msgid "Creating RPC server for service %s"
+msgstr ""
+
+#: cinder/service.py:145
+#, python-format
+msgid ""
+"Report interval must be less than service down time. Current config "
+"service_down_time: %(service_down_time)s, report_interval for this: "
+"service is: %(report_interval)s. Setting global service_down_time to: "
+"%(new_down_time)s"
+msgstr ""
+
+#: cinder/service.py:213
+msgid "Service killed that has no database entry"
+msgstr ""
+
+#: cinder/service.py:251
+msgid "The service database object disappeared, Recreating it."
+msgstr ""
+
+#: cinder/service.py:266
+msgid "Recovered model server connection!"
+msgstr ""
+
+#: cinder/service.py:272
+msgid "model server went away"
+msgstr ""
+
+#: cinder/service.py:294
+#, python-format
+msgid ""
+"Value of config option %(name)s_workers must be integer greater than 1.  "
+"Input value ignored."
+msgstr ""
+
+#: cinder/service.py:369
+msgid "serve() can only be called once"
+msgstr ""
+
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
+#: cinder/openstack/common/service.py:384
+msgid "Full set of CONF:"
+msgstr ""
+
+#: cinder/service.py:383
+#, python-format
+msgid "%s : FLAG SET "
+msgstr ""
+
+#: cinder/utils.py:97
+#, python-format
+msgid "Can not translate %s to integer."
+msgstr ""
+
+#: cinder/utils.py:128
+#, python-format
+msgid "May specify only one of %s"
+msgstr ""
+
+#: cinder/utils.py:213
+msgid "Specify a password or private_key"
+msgstr ""
+
+#: cinder/utils.py:229
+#, python-format
+msgid "Error connecting via ssh: %s"
+msgstr ""
+
+#: cinder/utils.py:413
+#, python-format
+msgid "Invalid backend: %s"
+msgstr ""
+
+#: cinder/utils.py:424
+#, python-format
+msgid "backend %s"
+msgstr ""
+
+#: cinder/utils.py:699
+#, python-format
+msgid "Could not remove tmpdir: %s"
+msgstr ""
+
+#: cinder/utils.py:760
+#, python-format
+msgid "Volume driver %s not initialized"
+msgstr ""
+
+#: cinder/utils.py:782
+#, python-format
+msgid "%s is not a string or unicode"
+msgstr ""
+
+#: cinder/utils.py:786
+#, python-format
+msgid "%(name)s has a minimum character requirement of %(min_length)s."
+msgstr ""
+
+#: cinder/utils.py:791
+#, python-format
+msgid "%(name)s has more than %(max_length)s characters."
+msgstr ""
+
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
+#, python-format
+msgid "Unable to find cert_file : %s"
+msgstr ""
+
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
+#, python-format
+msgid "Unable to find ca_file : %s"
+msgstr ""
+
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
+#, python-format
+msgid "Unable to find key_file : %s"
+msgstr ""
+
+#: 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:178
+#, python-format
+msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
+msgstr ""
+
+#: cinder/wsgi.py:215
+#, python-format
+msgid "Started %(name)s on %(host)s:%(port)s"
+msgstr ""
+
+#: cinder/wsgi.py:235
+msgid "Stopping WSGI server."
+msgstr ""
+
+#: cinder/wsgi.py:253
+msgid "WSGI server has stopped."
+msgstr ""
+
+#: cinder/wsgi.py:322
+msgid "You must implement __call__"
+msgstr ""
+
+#: cinder/api/auth.py:26
+msgid ""
+"cinder.api.auth:CinderKeystoneContext is deprecated. Please use "
+"cinder.api.middleware.auth:CinderKeystoneContext instead."
+msgstr ""
+
+#: cinder/api/auth.py:34
+msgid ""
+"cinder.api.auth:pipeline_factory is deprecated. Please use "
+"cinder.api.middleware.auth:pipeline_factory instead."
+msgstr ""
+
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:282
+msgid "limit param must be an integer"
+msgstr ""
+
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:279
+msgid "limit param must be positive"
+msgstr ""
+
+#: cinder/api/common.py:120
+msgid "offset param must be an integer"
+msgstr ""
+
+#: cinder/api/common.py:134
+msgid "offset param must be positive"
+msgstr ""
+
+#: cinder/api/common.py:162
+#, python-format
+msgid "marker [%s] not found"
+msgstr ""
+
+#: cinder/api/common.py:189
+#, python-format
+msgid "href %s does not contain version"
+msgstr ""
+
+#: cinder/api/extensions.py:183
+msgid "Initializing extension manager."
+msgstr ""
+
+#: cinder/api/extensions.py:198
+#, python-format
+msgid "Loaded extension: %s"
+msgstr ""
+
+#: cinder/api/extensions.py:236
+#, python-format
+msgid "Ext name: %s"
+msgstr ""
+
+#: cinder/api/extensions.py:237
+#, python-format
+msgid "Ext alias: %s"
+msgstr ""
+
+#: cinder/api/extensions.py:238
+#, python-format
+msgid "Ext description: %s"
+msgstr ""
+
+#: cinder/api/extensions.py:240
+#, python-format
+msgid "Ext namespace: %s"
+msgstr ""
+
+#: cinder/api/extensions.py:241
+#, python-format
+msgid "Ext updated: %s"
+msgstr ""
+
+#: cinder/api/extensions.py:243
+#, python-format
+msgid "Exception loading extension: %s"
+msgstr ""
+
+#: cinder/api/extensions.py:257
+#, python-format
+msgid "Loading extension %s"
+msgstr ""
+
+#: cinder/api/extensions.py:263
+#, python-format
+msgid "Calling extension factory %s"
+msgstr ""
+
+#: cinder/api/extensions.py:277
+#, python-format
+msgid "osapi_volume_extension is set to deprecated path: %s"
+msgstr ""
+
+#: cinder/api/extensions.py:279
+#, python-format
+msgid ""
+"Please set your flag or cinder.conf settings for osapi_volume_extension "
+"to: %s"
+msgstr ""
+
+#: cinder/api/extensions.py:288
+#, python-format
+msgid "Failed to load extension %(ext_factory)s: %(exc)s"
+msgstr ""
+
+#: cinder/api/extensions.py:357
+#, python-format
+msgid "Failed to load extension %(classpath)s: %(exc)s"
+msgstr ""
+
+#: cinder/api/extensions.py:382
+#, python-format
+msgid "Failed to load extension %(ext_name)s: %(exc)s"
+msgstr ""
+
+#: cinder/api/sizelimit.py:25
+msgid ""
+"cinder.api.sizelimit:RequestBodySizeLimiter is deprecated. Please use "
+"cinder.api.middleware.sizelimit:RequestBodySizeLimiter instead"
+msgstr ""
+
+#: cinder/api/xmlutil.py:266
+msgid "element is not a child"
+msgstr ""
+
+#: cinder/api/xmlutil.py:463
+msgid "root element selecting a list"
+msgstr ""
+
+#: cinder/api/xmlutil.py:786
+#, python-format
+msgid "Template tree mismatch; adding slave %(slavetag)s to master %(mastertag)s"
+msgstr ""
+
+#: cinder/api/xmlutil.py:907
+msgid "subclasses must implement construct()!"
+msgstr ""
+
+#: cinder/api/contrib/admin_actions.py:82
+#, python-format
+msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
+msgstr ""
+
+#: cinder/api/contrib/backups.py:161
+#, python-format
+msgid "show called for member %s"
+msgstr ""
+
+#: cinder/api/contrib/backups.py:173
+#, python-format
+msgid "delete called for member %s"
+msgstr ""
+
+#: cinder/api/contrib/backups.py:176
+#, python-format
+msgid "Delete backup with id: %s"
+msgstr ""
+
+#: cinder/api/contrib/backups.py:218
+#, python-format
+msgid "Creating new backup %s"
+msgstr ""
+
+#: cinder/api/contrib/backups.py:228 cinder/api/contrib/backups.py:260
+#: cinder/api/contrib/volume_transfer.py:157
+#: cinder/api/contrib/volume_transfer.py:193
+msgid "Incorrect request body format"
+msgstr ""
+
+#: cinder/api/contrib/backups.py:234
+#, python-format
+msgid "Creating backup of volume %(volume_id)s in container %(container)s"
+msgstr ""
+
+#: cinder/api/contrib/backups.py:257
+#, python-format
+msgid "Restoring backup %(backup_id)s (%(body)s)"
+msgstr ""
+
+#: cinder/api/contrib/backups.py:267
+#, python-format
+msgid "Restoring backup %(backup_id)s to volume %(volume_id)s"
+msgstr ""
+
+#: cinder/api/contrib/backups.py:300
+#, python-format
+msgid "export record called for member %s."
+msgstr ""
+
+#: cinder/api/contrib/backups.py:312
+#, python-format
+msgid "export record output: %s."
+msgstr ""
+
+#: cinder/api/contrib/backups.py:320
+#, python-format
+msgid "Importing record from %s."
+msgstr ""
+
+#: cinder/api/contrib/backups.py:322 cinder/api/contrib/backups.py:331
+msgid "Incorrect request body format."
+msgstr ""
+
+#: cinder/api/contrib/backups.py:333
+#, python-format
+msgid "Importing backup using %(service)s and url %(url)s."
+msgstr ""
+
+#: cinder/api/contrib/backups.py:348
+#, python-format
+msgid "import record output: %s."
+msgstr ""
+
+#: cinder/api/contrib/extended_snapshot_attributes.py:60
+msgid "Snapshot not found."
+msgstr ""
+
+#: cinder/api/contrib/hosts.py:86 cinder/api/openstack/wsgi.py:237
+msgid "cannot understand XML"
+msgstr ""
+
+#: cinder/api/contrib/hosts.py:136
+#, python-format
+msgid "Host '%s' could not be found."
+msgstr ""
+
+#: cinder/api/contrib/hosts.py:165
+#, python-format
+msgid "Invalid status: '%s'"
+msgstr ""
+
+#: cinder/api/contrib/hosts.py:168
+#, python-format
+msgid "Invalid update setting: '%s'"
+msgstr ""
+
+#: cinder/api/contrib/hosts.py:180
+#, python-format
+msgid "Setting host %(host)s to %(state)s."
+msgstr ""
+
+#: cinder/api/contrib/hosts.py:206
+msgid "Describe-resource is admin only functionality"
+msgstr ""
+
+#: cinder/api/contrib/hosts.py:214
+msgid "Host not found"
+msgstr ""
+
+#: cinder/api/contrib/qos_specs_manage.py:110
+msgid "Please specify a name for QoS specs."
+msgstr ""
+
+#: cinder/api/contrib/qos_specs_manage.py:221
+msgid "Failed to disassociate qos specs."
+msgstr ""
+
+#: cinder/api/contrib/qos_specs_manage.py:223
+msgid "Qos specs still in use."
+msgstr ""
+
+#: cinder/api/contrib/qos_specs_manage.py:299
+#: cinder/api/contrib/qos_specs_manage.py:353
+msgid "Volume Type id must not be None."
+msgstr ""
+
+#: cinder/api/contrib/quota_classes.py:72
+msgid "Missing required element quota_class_set in request body."
+msgstr ""
+
+#: cinder/api/contrib/quota_classes.py:81
+msgid "Quota class limit must be specified as an integer value."
+msgstr ""
+
+#: cinder/api/contrib/quota_classes.py:85
+msgid "Quota class limit must be -1 or greater."
+msgstr ""
+
+#: cinder/api/contrib/quotas.py:63
+msgid "Quota limit must be specified as an integer value."
+msgstr ""
+
+#: cinder/api/contrib/quotas.py:68
+msgid "Quota limit must be -1 or greater."
+msgstr ""
+
+#: cinder/api/contrib/quotas.py:105
+msgid "Missing required element quota_set in request body."
+msgstr ""
+
+#: cinder/api/contrib/quotas.py:116
+#, python-format
+msgid "Bad key(s) in quota set: %s"
+msgstr ""
+
+#: cinder/api/contrib/scheduler_hints.py:36
+msgid "Malformed scheduler_hints attribute"
+msgstr ""
+
+#: cinder/api/contrib/services.py:91
+msgid ""
+"Query by service parameter is deprecated. Please use binary parameter "
+"instead."
+msgstr ""
+
+#: cinder/api/contrib/services.py:161
+msgid "Disabled reason contains invalid characters or is too long"
+msgstr ""
+
+#: cinder/api/contrib/snapshot_actions.py:51
+msgid "'status' must be specified."
+msgstr ""
+
+#: cinder/api/contrib/snapshot_actions.py:61
+#, python-format
+msgid "Snapshot status %(cur)s not allowed for update_snapshot_status"
+msgstr ""
+
+#: cinder/api/contrib/snapshot_actions.py:67
+#, python-format
+msgid ""
+"Provided snapshot status %(provided)s not allowed for snapshot with "
+"status %(current)s."
+msgstr ""
+
+#: cinder/api/contrib/snapshot_actions.py:79
+msgid "progress must be an integer percentage"
+msgstr ""
+
+#: cinder/api/contrib/types_extra_specs.py:101
+msgid "Request body empty"
+msgstr ""
+
+#: cinder/api/contrib/types_extra_specs.py:105
+#: cinder/api/v1/snapshot_metadata.py:75 cinder/api/v1/volume_metadata.py:75
+#: cinder/api/v2/snapshot_metadata.py:75 cinder/api/v2/volume_metadata.py:74
+msgid "Request body and URI mismatch"
+msgstr ""
+
+#: cinder/api/contrib/types_extra_specs.py:108
+#: cinder/api/v1/snapshot_metadata.py:79 cinder/api/v1/volume_metadata.py:79
+#: cinder/api/v2/snapshot_metadata.py:79 cinder/api/v2/volume_metadata.py:78
+msgid "Request body contains too many items"
+msgstr ""
+
+#: cinder/api/contrib/types_extra_specs.py:152
+msgid ""
+"Key names can only contain alphanumeric characters, underscores, periods,"
+" colons and hyphens."
+msgstr ""
+
+#: cinder/api/contrib/types_manage.py:99
+msgid "Target volume type is still in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:100
+#, python-format
+msgid ""
+"Invalid request to attach volume to an instance %(instance_uuid)s and a "
+"host %(host_name)s simultaneously"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:108
+msgid "Invalid request to attach volume to an invalid target"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:112
+msgid ""
+"Invalid request to attach volume with an invalid mode. Attaching mode "
+"should be 'rw' or 'ro'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:197
+msgid "Unable to fetch connection information from backend."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:217
+msgid "Unable to terminate volume connection from backend."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:230
+msgid "No image_name was specified in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:238
+msgid "Bad value for 'force' parameter."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:241
+msgid "'force' is not string or bool."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:283
+msgid "New volume size must be specified as an integer."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:302
+msgid "Must specify readonly in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:310
+msgid "Bad value for 'readonly'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:314
+msgid "'readonly' not string or bool"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:328
+msgid "New volume type must be specified."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
+#: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
+#: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
+#: cinder/api/v2/volumes.py:373
+#, python-format
+msgid "Missing required element '%s' in request body"
+msgstr ""
+
+#: cinder/api/contrib/volume_manage.py:109
+#, python-format
+msgid "The following elements are required: %s"
+msgstr ""
+
+#: cinder/api/contrib/volume_manage.py:127 cinder/api/v2/volumes.py:297
+msgid "Volume type not found."
+msgstr ""
+
+#: cinder/api/contrib/volume_manage.py:143
+msgid "Service not found."
+msgstr ""
+
+#: cinder/api/contrib/volume_transfer.py:131
+msgid "Listing volume transfers"
+msgstr ""
+
+#: cinder/api/contrib/volume_transfer.py:147
+#, python-format
+msgid "Creating new volume transfer %s"
+msgstr ""
+
+#: cinder/api/contrib/volume_transfer.py:162
+#, python-format
+msgid "Creating transfer of volume %s"
+msgstr ""
+
+#: cinder/api/contrib/volume_transfer.py:183
+#, python-format
+msgid "Accepting volume transfer %s"
+msgstr ""
+
+#: cinder/api/contrib/volume_transfer.py:196
+#, python-format
+msgid "Accepting transfer %s"
+msgstr ""
+
+#: cinder/api/contrib/volume_transfer.py:217
+#, python-format
+msgid "Delete transfer with id: %s"
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:64
+msgid "key_size must be non-negative"
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:67
+msgid "key_size must be an integer"
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:73
+msgid "provider must be defined"
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:75
+msgid "control_location must be defined"
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:83
+#, python-format
+msgid "Valid control location are: %s"
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:111
+msgid "Cannot create encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:115
+msgid "Create body is not valid."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:141
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:144
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:147
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:153
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:187
+msgid "Cannot delete encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_unmanage.py:53
+#, python-format
+msgid "Unmanage volume with id: %s"
+msgstr ""
+
+#: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
+#: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
+#: cinder/api/v2/volumes.py:407
+msgid "Volume could not be found"
+msgstr ""
+
+#: cinder/api/contrib/volume_unmanage.py:62 cinder/api/v2/volumes.py:190
+msgid "Volume cannot be deleted while in attached state"
+msgstr ""
+
+#: cinder/api/middleware/auth.py:112
+msgid "Invalid service catalog json."
+msgstr ""
+
+#: cinder/api/middleware/fault.py:44
+#, python-format
+msgid "Caught error: %s"
+msgstr ""
+
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:978
+#, python-format
+msgid "%(url)s returned with HTTP %(status)d"
+msgstr ""
+
+#: cinder/api/middleware/fault.py:69
+#, python-format
+msgid "%(exception)s: %(explanation)s"
+msgstr ""
+
+#: cinder/api/middleware/sizelimit.py:55 cinder/api/middleware/sizelimit.py:64
+#: cinder/api/middleware/sizelimit.py:78
+msgid "Request is too large."
+msgstr ""
+
+#: cinder/api/openstack/__init__.py:69
+msgid "Must specify an ExtensionManager class"
+msgstr ""
+
+#: cinder/api/openstack/__init__.py:80
+#, python-format
+msgid "Extended resource: %s"
+msgstr ""
+
+#: cinder/api/openstack/__init__.py:104
+#, python-format
+msgid ""
+"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
+"resource"
+msgstr ""
+
+#: cinder/api/openstack/__init__.py:110
+#, python-format
+msgid "Extension %(ext_name)s extending resource: %(collection)s"
+msgstr ""
+
+#: cinder/api/openstack/__init__.py:126
+msgid ""
+"cinder.api.openstack:FaultWrapper is deprecated. Please use "
+"cinder.api.middleware.fault:FaultWrapper instead."
+msgstr ""
+
+#: cinder/api/openstack/urlmap.py:25
+msgid ""
+"cinder.api.openstack.urlmap:urlmap_factory is deprecated. Please use "
+"cinder.api.urlmap:urlmap_factory instead."
+msgstr ""
+
+#: cinder/api/openstack/wsgi.py:212 cinder/api/openstack/wsgi.py:628
+msgid "cannot understand JSON"
+msgstr ""
+
+#: cinder/api/openstack/wsgi.py:633
+msgid "too many body keys"
+msgstr ""
+
+#: cinder/api/openstack/wsgi.py:671
+#, python-format
+msgid "Exception handling resource: %s"
+msgstr ""
+
+#: cinder/api/openstack/wsgi.py:676
+#, python-format
+msgid "Fault thrown: %s"
+msgstr ""
+
+#: cinder/api/openstack/wsgi.py:679
+#, python-format
+msgid "HTTP exception thrown: %s"
+msgstr ""
+
+#: cinder/api/openstack/wsgi.py:787
+msgid "Empty body provided in request"
+msgstr ""
+
+#: cinder/api/openstack/wsgi.py:793
+msgid "Unrecognized Content-Type provided in request"
+msgstr ""
+
+#: cinder/api/openstack/wsgi.py:797
+msgid "No Content-Type provided in request"
+msgstr ""
+
+#: cinder/api/openstack/wsgi.py:908
+#, python-format
+msgid "There is no such action: %s"
+msgstr ""
+
+#: cinder/api/openstack/wsgi.py:911 cinder/api/openstack/wsgi.py:924
+#: 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
+#: cinder/api/v1/volume_metadata.py:96 cinder/api/v1/volume_metadata.py:121
+#: cinder/api/v2/snapshot_metadata.py:53 cinder/api/v2/snapshot_metadata.py:71
+#: cinder/api/v2/snapshot_metadata.py:96 cinder/api/v2/snapshot_metadata.py:121
+#: cinder/api/v2/volume_metadata.py:52 cinder/api/v2/volume_metadata.py:70
+#: cinder/api/v2/volume_metadata.py:95 cinder/api/v2/volume_metadata.py:120
+msgid "Malformed request body"
+msgstr ""
+
+#: cinder/api/openstack/wsgi.py:921
+msgid "Unsupported Content-Type"
+msgstr ""
+
+#: cinder/api/openstack/wsgi.py:933
+msgid "Malformed request url"
+msgstr ""
+
+#: cinder/api/openstack/wsgi.py:981
+#, python-format
+msgid "%(url)s returned a fault: %(e)s"
+msgstr ""
+
+#: cinder/api/openstack/volume/__init__.py:25
+msgid ""
+"cinder.api.openstack.volume:APIRouter is deprecated. Please use "
+"cinder.api.v1.router:APIRouter instead."
+msgstr ""
+
+#: cinder/api/openstack/volume/versions.py:26
+msgid ""
+"cinder.api.openstack.volume.versions.Versions is deprecated. Please use "
+"cinder.api.versions.Versions instead."
+msgstr ""
+
+#: cinder/api/v1/limits.py:139 cinder/api/v2/limits.py:138
+#, python-format
+msgid ""
+"Only %(value)s %(verb)s request(s) can be made to %(uri)s every "
+"%(unit_string)s."
+msgstr ""
+
+#: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
+msgid "This request was rate-limited."
+msgstr ""
+
+#: cinder/api/v1/snapshot_metadata.py:37 cinder/api/v1/snapshot_metadata.py:117
+#: cinder/api/v1/snapshot_metadata.py:156 cinder/api/v2/snapshot_metadata.py:37
+#: cinder/api/v2/snapshot_metadata.py:117
+#: cinder/api/v2/snapshot_metadata.py:156
+msgid "snapshot does not exist"
+msgstr ""
+
+#: cinder/api/v1/snapshot_metadata.py:139
+#: cinder/api/v1/snapshot_metadata.py:149 cinder/api/v1/volume_metadata.py:139
+#: cinder/api/v1/volume_metadata.py:149 cinder/api/v2/snapshot_metadata.py:139
+#: cinder/api/v2/snapshot_metadata.py:149 cinder/api/v2/volume_metadata.py:138
+#: cinder/api/v2/volume_metadata.py:148
+msgid "Metadata item was not found"
+msgstr ""
+
+#: cinder/api/v1/snapshots.py:119 cinder/api/v2/snapshots.py:120
+#, python-format
+msgid "Delete snapshot with id: %s"
+msgstr ""
+
+#: cinder/api/v1/snapshots.py:173 cinder/api/v2/snapshots.py:184
+msgid "'volume_id' must be specified"
+msgstr ""
+
+#: cinder/api/v1/snapshots.py:182 cinder/api/v2/snapshots.py:193
+#, python-format
+msgid "Create snapshot from volume %s"
+msgstr ""
+
+#: cinder/api/v1/snapshots.py:186 cinder/api/v2/snapshots.py:202
+#, python-format
+msgid "Invalid value '%s' for force. "
+msgstr ""
+
+#: cinder/api/v1/volume_metadata.py:37 cinder/api/v1/volume_metadata.py:117
+#: cinder/api/v1/volume_metadata.py:156 cinder/api/v2/volume_metadata.py:36
+#: cinder/api/v2/volume_metadata.py:116 cinder/api/v2/volume_metadata.py:155
+msgid "volume does not exist"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:114
+#, python-format
+msgid "vol=%s"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:293 cinder/api/v2/volumes.py:181
+#, python-format
+msgid "Delete volume with id: %s"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:347 cinder/api/v1/volumes.py:351
+#: cinder/api/v2/volumes.py:251 cinder/api/v2/volumes.py:255
+msgid "Invalid imageRef provided."
+msgstr ""
+
+#: cinder/api/v1/volumes.py:391 cinder/api/v2/volumes.py:308
+#, python-format
+msgid "snapshot id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:404
+#, python-format
+msgid "source vol id:%s not found"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:415 cinder/api/v2/volumes.py:331
+#, python-format
+msgid "Create volume of %s GB"
+msgstr ""
+
+#: cinder/api/v1/volumes.py:504
+#, python-format
+msgid "Removing options '%(bad_options)s' from query"
+msgstr ""
+
+#: cinder/api/v2/snapshots.py:111 cinder/api/v2/snapshots.py:126
+#: cinder/api/v2/snapshots.py:267
+msgid "Snapshot could not be found"
+msgstr ""
+
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:369
+msgid "Missing request body"
+msgstr ""
+
+#: cinder/api/v2/types.py:70
+msgid "Volume type not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:320
+#, python-format
+msgid "source volume id:%s not found"
+msgstr ""
+
+#: cinder/api/v2/volumes.py:433
+#, python-format
+msgid "Removing options '%s' from query"
+msgstr ""
+
+#: cinder/backup/api.py:66
+msgid "Backup status must be available or error"
+msgstr ""
+
+#: cinder/backup/api.py:117
+msgid "Volume to be backed up must be available"
+msgstr ""
+
+#: cinder/backup/api.py:152
+msgid "Backup status must be available"
+msgstr ""
+
+#: cinder/backup/api.py:157
+msgid "Backup to be restored has invalid size"
+msgstr ""
+
+#: cinder/backup/api.py:166
+#, python-format
+msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
+msgstr ""
+
+#: cinder/backup/api.py:182
+msgid "Volume to be restored to must be available"
+msgstr ""
+
+#: cinder/backup/api.py:188
+#, python-format
+msgid ""
+"volume size %(volume_size)d is too small to restore backup of size "
+"%(size)d."
+msgstr ""
+
+#: cinder/backup/api.py:193
+#, python-format
+msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
+msgstr ""
+
+#: cinder/backup/api.py:227
+#, python-format
+msgid "Backup status must be available and not %s."
+msgstr ""
+
+#: cinder/backup/driver.py:53
+#, python-format
+msgid "Value with type=%s is not serializable"
+msgstr ""
+
+#: cinder/backup/driver.py:66 cinder/backup/driver.py:89
+#: cinder/backup/driver.py:112
+#, python-format
+msgid "Getting metadata type '%s'"
+msgstr ""
+
+#: cinder/backup/driver.py:73 cinder/backup/driver.py:96
+#: cinder/backup/driver.py:120
+#, python-format
+msgid "Unable to serialize field '%s' - excluding from backup"
+msgstr ""
+
+#: cinder/backup/driver.py:78 cinder/backup/driver.py:101
+#: cinder/backup/driver.py:125
+#, python-format
+msgid "Completed fetching metadata type '%s'"
+msgstr ""
+
+#: cinder/backup/driver.py:80 cinder/backup/driver.py:103
+#: cinder/backup/driver.py:127
+#, python-format
+msgid "No metadata type '%s' available"
+msgstr ""
+
+#: cinder/backup/driver.py:143
+#, python-format
+msgid "Excluding field '%s'"
+msgstr ""
+
+#: cinder/backup/driver.py:149
+msgid "Restoring volume base metadata"
+msgstr ""
+
+#: cinder/backup/driver.py:162
+msgid "Restoring volume metadata"
+msgstr ""
+
+#: cinder/backup/driver.py:171
+msgid "Restoring volume glance metadata"
+msgstr ""
+
+#: cinder/backup/driver.py:229
+#, python-format
+msgid "Unsupported backup metadata version (%s)"
+msgstr ""
+
+#: cinder/backup/driver.py:238
+#, python-format
+msgid "No metadata of type '%s' to restore"
+msgstr ""
+
+#: cinder/backup/manager.py:102
+msgid "NULL host not allowed for volume backend lookup."
+msgstr ""
+
+#: cinder/backup/manager.py:105
+#, python-format
+msgid "Checking hostname '%s' for backend info."
+msgstr ""
+
+#: cinder/backup/manager.py:112
+#, python-format
+msgid "Backend not found in hostname (%s) so using default."
+msgstr ""
+
+#: cinder/backup/manager.py:122
+#, python-format
+msgid "Manager requested for volume_backend '%s'."
+msgstr ""
+
+#: cinder/backup/manager.py:125 cinder/backup/manager.py:137
+msgid "Fetching default backend."
+msgstr ""
+
+#: cinder/backup/manager.py:128
+#, python-format
+msgid "Volume manager for backend '%s' does not exist."
+msgstr ""
+
+#: cinder/backup/manager.py:134
+#, python-format
+msgid "Driver requested for volume_backend '%s'."
+msgstr ""
+
+#: cinder/backup/manager.py:152
+#, python-format
+msgid ""
+"Registering backend %(backend)s (host=%(host)s "
+"backend_name=%(backend_name)s)."
+msgstr ""
+
+#: cinder/backup/manager.py:159
+#, python-format
+msgid "Registering default backend %s."
+msgstr ""
+
+#: cinder/backup/manager.py:163
+#, python-format
+msgid "Starting volume driver %(driver_name)s (%(version)s)."
+msgstr ""
+
+#: cinder/backup/manager.py:170
+#, python-format
+msgid "Error encountered during initialization of driver: %(name)s."
+msgstr ""
+
+#: cinder/backup/manager.py:189
+msgid "Cleaning up incomplete backup operations."
+msgstr ""
+
+#: cinder/backup/manager.py:194
+#, python-format
+msgid "Resetting volume %s to available (was backing-up)."
+msgstr ""
+
+#: cinder/backup/manager.py:199
+#, python-format
+msgid "Resetting volume %s to error_restoring (was restoring-backup)."
+msgstr ""
+
+#: cinder/backup/manager.py:211
+#, python-format
+msgid "Resetting backup %s to error (was creating)."
+msgstr ""
+
+#: cinder/backup/manager.py:217
+#, python-format
+msgid "Resetting backup %s to available (was restoring)."
+msgstr ""
+
+#: cinder/backup/manager.py:222
+#, python-format
+msgid "Resuming delete on backup: %s."
+msgstr ""
+
+#: cinder/backup/manager.py:230
+#, python-format
+msgid "Create backup started, backup: %(backup_id)s volume: %(volume_id)s."
+msgstr ""
+
+#: cinder/backup/manager.py:242
+#, python-format
+msgid ""
+"Create backup aborted, expected volume status %(expected_status)s but got"
+" %(actual_status)s."
+msgstr ""
+
+#: cinder/backup/manager.py:254
+#, python-format
+msgid ""
+"Create backup aborted, expected backup status %(expected_status)s but got"
+" %(actual_status)s."
+msgstr ""
+
+#: cinder/backup/manager.py:287
+#, python-format
+msgid "Create backup finished. backup: %s."
+msgstr ""
+
+#: cinder/backup/manager.py:291
+#, python-format
+msgid "Restore backup started, backup: %(backup_id)s volume: %(volume_id)s."
+msgstr ""
+
+#: cinder/backup/manager.py:304
+#, python-format
+msgid ""
+"Restore backup aborted, expected volume status %(expected_status)s but "
+"got %(actual_status)s."
+msgstr ""
+
+#: cinder/backup/manager.py:314
+#, python-format
+msgid ""
+"Restore backup aborted: expected backup status %(expected_status)s but "
+"got %(actual_status)s."
+msgstr ""
+
+#: cinder/backup/manager.py:332
+#, python-format
+msgid ""
+"Restore backup aborted, the backup service currently configured "
+"[%(configured_service)s] is not the backup service that was used to "
+"create this backup [%(backup_service)s]."
+msgstr ""
+
+#: cinder/backup/manager.py:363
+#, python-format
+msgid ""
+"Restore backup finished, backup %(backup_id)s restored to volume "
+"%(volume_id)s."
+msgstr ""
+
+#: cinder/backup/manager.py:382
+#, python-format
+msgid "Delete backup started, backup: %s."
+msgstr ""
+
+#: cinder/backup/manager.py:389
+#, python-format
+msgid ""
+"Delete_backup aborted, expected backup status %(expected_status)s but got"
+" %(actual_status)s."
+msgstr ""
+
+#: cinder/backup/manager.py:402
+#, python-format
+msgid ""
+"Delete backup aborted, the backup service currently configured "
+"[%(configured_service)s] is not the backup service that was used to "
+"create this backup [%(backup_service)s]."
+msgstr ""
+
+#: cinder/backup/manager.py:425
+#, python-format
+msgid "Delete backup finished, backup %s deleted."
+msgstr ""
+
+#: cinder/backup/manager.py:440
+#, python-format
+msgid "Export record started, backup: %s."
+msgstr ""
+
+#: cinder/backup/manager.py:447
+#, python-format
+msgid ""
+"Export backup aborted, expected backup status %(expected_status)s but got"
+" %(actual_status)s."
+msgstr ""
+
+#: cinder/backup/manager.py:458
+#, python-format
+msgid ""
+"Export record aborted, the backup service currently configured "
+"[%(configured_service)s] is not the backup service that was used to "
+"create this backup [%(backup_service)s]."
+msgstr ""
+
+#: cinder/backup/manager.py:476
+#, python-format
+msgid "Export record finished, backup %s exported."
+msgstr ""
+
+#: cinder/backup/manager.py:495
+#, python-format
+msgid "Import record started, backup_url: %s."
+msgstr ""
+
+#: cinder/backup/manager.py:511
+#, python-format
+msgid ""
+"Import record failed, cannot find backup service to perform the import. "
+"Request service %(service)s"
+msgstr ""
+
+#: cinder/backup/manager.py:546
+#, python-format
+msgid "Backup metadata received from driver for import is missing %s."
+msgstr ""
+
+#: cinder/backup/manager.py:561
+#, python-format
+msgid ""
+"Backup service %(service)s does not support verify. Backup id %(id)s is "
+"not verified. Skipping verify."
+msgstr ""
+
+#: cinder/backup/manager.py:572
+#, python-format
+msgid "Import record id %s metadata from driver finished."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
+#, python-format
+msgid "Metadata backup object '%s' already exists"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:139
+#, python-format
+msgid "Metadata backup object %s does not exist"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:150
+#, python-format
+msgid "Metadata backup object '%s' not found - ignoring"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:178
+msgid ""
+"RBD striping not supported - ignoring configuration settings for rbd "
+"striping"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:201
+#, python-format
+msgid "invalid user '%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:267
+msgid "Backup id required"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:279
+#, python-format
+msgid "Discarding %(length)s bytes from offset %(offset)s"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:287
+#, python-format
+msgid "Writing zeroes chunk %d"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:301
+#, python-format
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:305
+#, python-format
+msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:324
+#, python-format
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:334
+#, python-format
+msgid "Transferring remaining %s bytes"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:350
+#, python-format
+msgid "Creating base image '%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:377
+#, python-format
+msgid "Deleting backup snapshot='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:380
+msgid "No backup snapshot to delete"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:416
+#, python-format
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:425
+#, python-format
+msgid "image %s not found"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:433
+#, python-format
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:440
+#, python-format
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:449
+#, python-format
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:463
+#, python-format
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:474
+#, python-format
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
+#, python-format
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:550
+#, python-format
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:560
+#, python-format
+msgid "Image '%s' not found - trying diff format name"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:565
+#, python-format
+msgid "Diff format image '%s' not found"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:600
+#, python-format
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:617
+#, python-format
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:630
+#, python-format
+msgid ""
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"incremental backup"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:641
+#, python-format
+msgid "Creating backup snapshot='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:661
+#, python-format
+msgid "Differential backup transfer completed in %.4fs"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:670
+msgid "Differential backup transfer failed"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:678
+#, python-format
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:774
+#, python-format
+msgid "Looking for snapshot of backup base '%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:777
+#, python-format
+msgid "Backup base '%s' has no snapshots"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:784
+#, python-format
+msgid "Backup '%s' has no snapshot"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:788
+#, python-format
+msgid "Backup should only have one snapshot but instead has %s"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:793
+#, python-format
+msgid "Found snapshot '%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:814
+msgid "Need non-zero volume size"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
+#, python-format
+msgid "Failed to backup volume metadata - %s"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:855
+#, python-format
+msgid "Starting backup of volume='%s'."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:888
+#, python-format
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:948
+msgid "Adjusting restore vol size"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:960
+#, python-format
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:972
+msgid "Differential restore failed, trying full restore"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:983
+#, python-format
+msgid "Restore transfer completed in %.4fs"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:1032
+#, python-format
+msgid "RBD has %s extents"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:1080
+msgid "Destination has extents - forcing full copy"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:1085
+#, python-format
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
+msgid "Metadata restore failed due to incompatible version"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:1152
+#, python-format
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:1173
+#, python-format
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:1179
+#, python-format
+msgid "Delete started for backup=%s"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
+msgid ""
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:1195
+#, python-format
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:1199
+#, python-format
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:105
+#, python-format
+msgid "unsupported compression algorithm: %s"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:122
+#, python-format
+msgid "single_user auth mode enabled, but %(param)s not set"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:140
+#, python-format
+msgid "_create_container started, container: %(container)s,backup: %(backup_id)s"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:159
+#, python-format
+msgid "_generate_swift_object_name_prefix: %s"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:168
+#, python-format
+msgid "generated object list: %s"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:179
+#, python-format
+msgid ""
+"_write_metadata started, container name: %(container)s, metadata "
+"filename: %(filename)s"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:197
+#, python-format
+msgid ""
+"error writing metadata file to swift, MD5 of metadata file in swift "
+"[%(etag)s] is not the same as MD5 of metadata file sent to swift "
+"[%(md5)s]"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:202
+msgid "_write_metadata finished"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:207
+#, python-format
+msgid ""
+"_read_metadata started, container name: %(container)s, metadata filename:"
+" %(filename)s"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:212
+#, python-format
+msgid "_read_metadata finished (%s)"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:222
+#, python-format
+msgid "volume size %d is invalid."
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:236
+#, python-format
+msgid ""
+"starting backup of volume: %(volume_id)s to swift, volume size: "
+"%(volume_size_bytes)d, swift object names prefix %(object_prefix)s, "
+"availability zone: %(availability_zone)s"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:260
+msgid "reading chunk of data from volume"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:267
+#, python-format
+msgid ""
+"compressed %(data_size_bytes)d bytes of data to %(comp_size_bytes)d bytes"
+" using %(algorithm)s"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:276
+msgid "not compressing data"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:280
+msgid "About to put_object"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:286
+#, python-format
+msgid "swift MD5 for %(object_name)s: %(etag)s"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:290
+#, python-format
+msgid "backup MD5 for %(object_name)s: %(md5)s"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:293
+#, python-format
+msgid ""
+"error writing object to swift, MD5 of object in swift %(etag)s is not the"
+" same as MD5 of object sent to swift %(md5)s"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:301
+msgid "Calling eventlet.sleep(0)"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:319
+#, python-format
+msgid "backup %s finished."
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:352
+#, python-format
+msgid "Backup volume metadata to swift failed: %s"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:362
+#, python-format
+msgid "v1 swift volume backup restore of %s started"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:367
+#, python-format
+msgid "metadata_object_names = %s"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:373
+msgid ""
+"restore_backup aborted, actual swift object list in swift does not match "
+"object list stored in metadata"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:379
+#, python-format
+msgid ""
+"restoring object from swift. backup: %(backup_id)s, container: "
+"%(container)s, swift object name: %(object_name)s, volume: %(volume_id)s"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:395
+#, python-format
+msgid "decompressing data using %s algorithm"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:418
+#, python-format
+msgid "v1 swift volume backup restore of %s finished"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:426
+#, python-format
+msgid ""
+"starting restore of backup %(object_prefix)s from swift container: "
+"%(container)s, to volume %(volume_id)s, backup: %(backup_id)s"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:440
+#, python-format
+msgid "Restoring swift backup version %s"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:445
+#, python-format
+msgid "No support to restore swift backup version %s"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:461
+#, python-format
+msgid "restore %(backup_id)s to %(volume_id)s finished."
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:475
+msgid "swift error while listing objects, continuing with delete"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:484
+#, python-format
+msgid "swift error while deleting object %s, continuing with delete"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:487
+#, python-format
+msgid "deleted swift object: %(swift_object_name)s in container: %(container)s"
+msgstr ""
+
+#: cinder/backup/drivers/swift.py:497
+#, python-format
+msgid "delete %s finished"
+msgstr ""
+
+#: cinder/backup/drivers/tsm.py:78
+#, python-format
+msgid ""
+"%(op)s: backup %(bck_id)s, volume %(vol_id)s failed. Backup object has "
+"unexpected mode. Image or file backups supported, actual mode is "
+"%(vol_mode)s."
+msgstr ""
+
+#: cinder/backup/drivers/tsm.py:113
+#, python-format
+msgid ""
+"backup: %(vol_id)s failed to create device hardlink from %(vpath)s to "
+"%(bpath)s.\n"
+"stdout: %(out)s\n"
+" stderr: %(err)s"
+msgstr ""
+
+#: cinder/backup/drivers/tsm.py:211
+#, python-format
+msgid ""
+"backup: %(vol_id)s failed. %(path)s is unexpected file type. Block or "
+"regular files supported, actual file mode is %(vol_mode)s."
+msgstr ""
+
+#: cinder/backup/drivers/tsm.py:221
+#, python-format
+msgid "backup: %(vol_id)s failed. Cannot obtain real path to volume at %(path)s."
+msgstr ""
+
+#: cinder/backup/drivers/tsm.py:228
+#, python-format
+msgid "backup: %(vol_id)s failed. %(path)s is not a file."
+msgstr ""
+
+#: cinder/backup/drivers/tsm.py:251
+#, python-format
+msgid ""
+"backup: %(vol_id)s failed to remove backup hardlink from %(vpath)s to "
+"%(bpath)s.\n"
+"stdout: %(out)s\n"
+" stderr: %(err)s."
+msgstr ""
+
+#: cinder/backup/drivers/tsm.py:298
+#, python-format
+msgid ""
+"backup: %(vol_id)s failed to obtain backup success notification from "
+"server.\n"
+"stdout: %(out)s\n"
+" stderr: %(err)s"
+msgstr ""
+
+#: cinder/backup/drivers/tsm.py:339
+#, python-format
+msgid ""
+"restore: %(vol_id)s failed.\n"
+"stdout: %(out)s\n"
+" stderr: %(err)s."
+msgstr ""
+
+#: cinder/backup/drivers/tsm.py:362
+msgid ""
+"Volume metadata backup requested but this driver does not yet support "
+"this feature."
+msgstr ""
+
+#: cinder/backup/drivers/tsm.py:370
+#, python-format
+msgid ""
+"Starting backup of volume: %(volume_id)s to TSM, volume path: "
+"%(volume_path)s, mode: %(mode)s."
+msgstr ""
+
+#: cinder/backup/drivers/tsm.py:391
+#, python-format
+msgid ""
+"backup: %(vol_id)s failed to run dsmc on %(bpath)s.\n"
+"stdout: %(out)s\n"
+" stderr: %(err)s"
+msgstr ""
+
+#: cinder/backup/drivers/tsm.py:401
+#, python-format
+msgid ""
+"backup: %(vol_id)s failed to run dsmc due to invalid arguments on "
+"%(bpath)s.\n"
+"stdout: %(out)s\n"
+" stderr: %(err)s"
+msgstr ""
+
+#: cinder/backup/drivers/tsm.py:415
+#, python-format
+msgid "Backup %s finished."
+msgstr ""
+
+#: cinder/backup/drivers/tsm.py:431
+#, python-format
+msgid ""
+"Starting restore of backup from TSM to volume %(volume_id)s, backup: "
+"%(backup_id)s, mode: %(mode)s."
+msgstr ""
+
+#: cinder/backup/drivers/tsm.py:452
+#, python-format
+msgid ""
+"restore: %(vol_id)s failed to run dsmc on %(bpath)s.\n"
+"stdout: %(out)s\n"
+" stderr: %(err)s"
+msgstr ""
+
+#: cinder/backup/drivers/tsm.py:462
+#, python-format
+msgid ""
+"restore: %(vol_id)s failed to run dsmc due to invalid arguments on "
+"%(bpath)s.\n"
+"stdout: %(out)s\n"
+" stderr: %(err)s"
+msgstr ""
+
+#: cinder/backup/drivers/tsm.py:476
+#, python-format
+msgid "Restore %(backup_id)s to %(volume_id)s finished."
+msgstr ""
+
+#: cinder/backup/drivers/tsm.py:491
+#, python-format
+msgid "Delete started for backup: %(backup)s, mode: %(mode)s."
+msgstr ""
+
+#: cinder/backup/drivers/tsm.py:508
+#, python-format
+msgid ""
+"delete: %(vol_id)s failed to run dsmc with stdout: %(out)s\n"
+" stderr: %(err)s"
+msgstr ""
+
+#: cinder/backup/drivers/tsm.py:516
+#, python-format
+msgid ""
+"delete: %(vol_id)s failed to run dsmc due to invalid arguments with "
+"stdout: %(out)s\n"
+" stderr: %(err)s"
+msgstr ""
+
+#: cinder/backup/drivers/tsm.py:530
+#, python-format
+msgid ""
+"delete: %(vol_id)s failed with stdout: %(out)s\n"
+" stderr: %(err)s"
+msgstr ""
+
+#: cinder/backup/drivers/tsm.py:537
+#, python-format
+msgid "Delete %s finished."
+msgstr ""
+
+#: cinder/brick/exception.py:52
+#, python-format
+msgid "Exception in string format operation.  msg='%s'"
+msgstr ""
+
+#: cinder/brick/exception.py:88
+msgid "We are unable to locate any Fibre Channel devices."
+msgstr ""
+
+#: cinder/brick/exception.py:92
+msgid "Unable to find a Fibre Channel volume device."
+msgstr ""
+
+#: cinder/brick/exception.py:96
+#, python-format
+msgid "Volume device not found at %(device)s."
+msgstr ""
+
+#: cinder/brick/exception.py:100
+#, python-format
+msgid "Unable to find Volume Group: %(vg_name)s"
+msgstr ""
+
+#: cinder/brick/exception.py:104
+#, python-format
+msgid "Failed to create Volume Group: %(vg_name)s"
+msgstr ""
+
+#: cinder/brick/exception.py:108
+#, python-format
+msgid "Failed to create iscsi target for volume %(volume_id)s."
+msgstr ""
+
+#: cinder/brick/exception.py:112
+#, python-format
+msgid "Failed to remove iscsi target for volume %(volume_id)s."
+msgstr ""
+
+#: cinder/brick/exception.py:116
+#, python-format
+msgid "Failed to attach iSCSI target for volume %(volume_id)s."
+msgstr ""
+
+#: cinder/brick/exception.py:120
+#, python-format
+msgid "Connect to volume via protocol %(protocol)s not supported."
+msgstr ""
+
+#: cinder/brick/initiator/connector.py:127
+#, python-format
+msgid "Invalid InitiatorConnector protocol specified %(protocol)s"
+msgstr ""
+
+#: cinder/brick/initiator/connector.py:140
+#, python-format
+msgid "Failed to access the device on the path %(path)s: %(error)s %(info)s."
+msgstr ""
+
+#: cinder/brick/initiator/connector.py:229
+#, python-format
+msgid ""
+"ISCSI volume not yet found at: %(host_device)s. Will rescan & retry.  Try"
+" number: %(tries)s"
+msgstr ""
+
+#: cinder/brick/initiator/connector.py:242
+#, python-format
+msgid "Found iSCSI node %(host_device)s (after %(tries)s rescans)"
+msgstr ""
+
+#: cinder/brick/initiator/connector.py:317
+#, python-format
+msgid "Could not find the iSCSI Initiator File %s"
+msgstr ""
+
+#: cinder/brick/initiator/connector.py:609
+msgid "We are unable to locate any Fibre Channel devices"
+msgstr ""
+
+#: cinder/brick/initiator/connector.py:619
+#, python-format
+msgid "Looking for Fibre Channel dev %(device)s"
+msgstr ""
+
+#: cinder/brick/initiator/connector.py:629
+msgid "Fibre Channel volume device not found."
+msgstr ""
+
+#: cinder/brick/initiator/connector.py:633
+#, python-format
+msgid "Fibre volume not yet found. Will rescan & retry.  Try number: %(tries)s"
+msgstr ""
+
+#: cinder/brick/initiator/connector.py:649
+#, python-format
+msgid "Found Fibre Channel volume %(name)s (after %(tries)s rescans)"
+msgstr ""
+
+#: cinder/brick/initiator/connector.py:658
+#, python-format
+msgid "Multipath device discovered %(device)s"
+msgstr ""
+
+#: cinder/brick/initiator/connector.py:776
+#, python-format
+msgid "AoE volume not yet found at: %(path)s. Try number: %(tries)s"
+msgstr ""
+
+#: cinder/brick/initiator/connector.py:789
+#, python-format
+msgid "Found AoE device %(path)s (after %(tries)s rediscover)"
+msgstr ""
+
+#: cinder/brick/initiator/connector.py:815
+#, python-format
+msgid "aoe-discover: stdout=%(out)s stderr%(err)s"
+msgstr ""
+
+#: cinder/brick/initiator/connector.py:825
+#, python-format
+msgid "aoe-revalidate %(dev)s: stdout=%(out)s stderr%(err)s"
+msgstr ""
+
+#: cinder/brick/initiator/connector.py:834
+#, python-format
+msgid "aoe-flush %(dev)s: stdout=%(out)s stderr%(err)s"
+msgstr ""
+
+#: cinder/brick/initiator/connector.py:858
+msgid ""
+"Connection details not present. RemoteFsClient may not initialize "
+"properly."
+msgstr ""
+
+#: cinder/brick/initiator/connector.py:915
+msgid "Invalid connection_properties specified no device_path attribute"
+msgstr ""
+
+#: cinder/brick/initiator/linuxfc.py:50 cinder/brick/initiator/linuxfc.py:56
+msgid "systool is not installed"
+msgstr ""
+
+#: cinder/brick/initiator/linuxscsi.py:99
+#: cinder/brick/initiator/linuxscsi.py:107
+#: cinder/brick/initiator/linuxscsi.py:124
+#, python-format
+msgid "multipath call failed exit (%(code)s)"
+msgstr ""
+
+#: cinder/brick/initiator/linuxscsi.py:145
+#, python-format
+msgid "Couldn't find multipath device %(line)s"
+msgstr ""
+
+#: cinder/brick/initiator/linuxscsi.py:149
+#, python-format
+msgid "Found multipath device = %(mdev)s"
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:135
+msgid "Attempting recreate of backing lun..."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:153
+#, 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:172
+#, python-format
+msgid "Creating iscsi_target for: %s"
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:179
+#, python-format
+msgid ""
+"Created volume path %(vp)s,\n"
+"content: %(vc)s"
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
+#, python-format
+msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:222
+#, 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:252
+#, python-format
+msgid "Removing iscsi_target for: %s"
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:256
+#, python-format
+msgid "Volume path %s does not exist, nothing to remove."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
+#, python-format
+msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
+msgid "valid iqn needed for show_target"
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:398
+#, python-format
+msgid "Removing iscsi_target for volume: %s"
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:492
+msgid "cinder-rtstool is not installed correctly"
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:512
+#, python-format
+msgid "Creating iscsi_target for volume: %s"
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
+#, python-format
+msgid "Failed to create iscsi target for volume id:%s."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:552
+#, python-format
+msgid "Removing iscsi_target: %s"
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:562
+#, python-format
+msgid "Failed to remove iscsi target for volume id:%s."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:591
+#, python-format
+msgid "Failed to add initiator iqn %s to target"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:75
+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:478 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:643
+#: cinder/brick/local_dev/lvm.py:681
+#, 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:479 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:644
+#: cinder/brick/local_dev/lvm.py:682
+#, 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:480 cinder/brick/local_dev/lvm.py:510
+#: cinder/brick/local_dev/lvm.py:553 cinder/brick/local_dev/lvm.py:645
+#: cinder/brick/local_dev/lvm.py:683
+#, python-format
+msgid "StdErr  :%s"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:82
+#, python-format
+msgid "Unable to locate Volume Group %s"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:157
+msgid "Error querying thin pool about data_percent"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:370
+#, python-format
+msgid "Unable to find VG: %s"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:420
+msgid ""
+"Requested to setup thin provisioning, however current LVM version does "
+"not support it."
+msgstr ""
+
+#: 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:493
+#, python-format
+msgid "Trying to create snapshot by non-existent LV: %s"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:507
+msgid "Error creating snapshot"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:550
+msgid "Error activating LV"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:582
+#, python-format
+msgid "Error during lvchange -an: CMD: %(command)s, RESPONSE: %(response)s"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:599
+#, python-format
+msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:604
+msgid "Attempting udev settle and retry of lvremove..."
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:642
+msgid "Error extending Volume"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:680
+msgid "Error renaming logical volume"
+msgstr ""
+
+#: cinder/brick/remotefs/remotefs.py:41
+msgid "nfs_mount_point_base required"
+msgstr ""
+
+#: cinder/brick/remotefs/remotefs.py:48
+msgid "glusterfs_mount_point_base required"
+msgstr ""
+
+#: cinder/brick/remotefs/remotefs.py:89
+#, python-format
+msgid "Already mounted: %s"
+msgstr ""
+
+#: cinder/brick/remotefs/remotefs.py:123
+#, python-format
+msgid "Mounted %(sh)s using %(mnt_type)s."
+msgstr ""
+
+#: cinder/brick/remotefs/remotefs.py:128
+#, python-format
+msgid "Failed to do %s mount."
+msgstr ""
+
+#: cinder/brick/remotefs/remotefs.py:129
+#, python-format
+msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
+msgstr ""
+
+#: cinder/common/config.py:119
+msgid "Deploy v1 of the Cinder API."
+msgstr ""
+
+#: cinder/common/config.py:122
+msgid "Deploy v2 of the Cinder API."
+msgstr ""
+
+#: cinder/common/sqlalchemyutils.py:66
+#: cinder/openstack/common/db/sqlalchemy/utils.py:72
+msgid "Id not in sort_keys; is sort_keys unique?"
+msgstr ""
+
+#: cinder/common/sqlalchemyutils.py:114
+#: cinder/openstack/common/db/sqlalchemy/utils.py:120
+msgid "Unknown sort direction, must be 'desc' or 'asc'"
+msgstr ""
+
+#: cinder/compute/nova.py:98
+#, python-format
+msgid "Novaclient connection created using URL: %s"
+msgstr ""
+
+#: cinder/db/sqlalchemy/api.py:65
+msgid "Use of empty request context is deprecated"
+msgstr ""
+
+#: cinder/db/sqlalchemy/api.py:192
+#, python-format
+msgid "Unrecognized read_deleted value '%s'"
+msgstr ""
+
+#: cinder/db/sqlalchemy/api.py:800
+#, python-format
+msgid "Change will make usage less than 0 for the following resources: %s"
+msgstr ""
+
+#: cinder/db/sqlalchemy/api.py:1214
+msgid "'migration_status' column could not be found."
+msgstr ""
+
+#: cinder/db/sqlalchemy/api.py:1224
+msgid "'metadata' filter value is not valid."
+msgstr ""
+
+#: cinder/db/sqlalchemy/api.py:1234
+#, python-format
+msgid "'%s' filter key is not valid, it maps to a relationship."
+msgstr ""
+
+#: cinder/db/sqlalchemy/api.py:1239
+#, python-format
+msgid "'%s' filter key is not valid."
+msgstr ""
+
+#: cinder/db/sqlalchemy/api.py:1907
+#, python-format
+msgid "VolumeType %s deletion failed, VolumeType in use."
+msgstr ""
+
+#: cinder/db/sqlalchemy/api.py:2608
+#, python-format
+msgid "No backup with id %s"
+msgstr ""
+
+#: cinder/db/sqlalchemy/api.py:2693
+msgid "Volume must be available"
+msgstr ""
+
+#: cinder/db/sqlalchemy/api.py:2717
+#, python-format
+msgid "Volume in unexpected state %s, expected awaiting-transfer"
+msgstr ""
+
+#: cinder/db/sqlalchemy/api.py:2739
+#, python-format
+msgid ""
+"Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
+"%(status)s, expected awaiting-transfer"
+msgstr ""
+
+#: cinder/db/sqlalchemy/migration.py:37
+msgid "version should be an integer"
+msgstr ""
+
+#: cinder/db/sqlalchemy/migration.py:64
+msgid "Upgrade DB using Essex release first."
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/001_cinder_init.py:240
+msgid "Exception while creating table."
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/001_cinder_init.py:269
+msgid "Downgrade from initial Cinder install is unsupported."
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:49
+#: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:74
+#: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:105
+#: cinder/db/sqlalchemy/migrate_repo/versions/008_add_backup.py:56
+#: cinder/db/sqlalchemy/migrate_repo/versions/009_add_snapshot_metadata_table.py:45
+#: cinder/db/sqlalchemy/migrate_repo/versions/010_add_transfers_table.py:48
+#: cinder/db/sqlalchemy/migrate_repo/versions/017_add_encryption_information.py:80
+#: cinder/db/sqlalchemy/migrate_repo/versions/020_add_volume_admin_metadata_table.py:46
+#, python-format
+msgid "Table |%s| not created!"
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:127
+msgid "Dropping foreign key reservations_ibfk_1 failed."
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:133
+msgid "quota_classes table not dropped"
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:140
+msgid "quota_usages table not dropped"
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:147
+msgid "reservations table not dropped"
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
+msgid "Exception while creating table 'volume_glance_metadata'"
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
+msgid "volume_glance_metadata table not dropped"
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/008_add_backup.py:68
+msgid "backups table not dropped"
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/009_add_snapshot_metadata_table.py:58
+msgid "snapshot_metadata table not dropped"
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/010_add_transfers_table.py:61
+msgid "transfers table not dropped"
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/015_drop_migrations_table.py:31
+msgid "migrations table not dropped"
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/015_drop_migrations_table.py:61
+#, python-format
+msgid "Table |%s| not created"
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/016_drop_sm_tables.py:37
+#, python-format
+msgid "Exception while dropping table %s."
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/016_drop_sm_tables.py:100
+#, python-format
+msgid "Exception while creating table %s."
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/017_add_encryption_information.py:34
+#: cinder/db/sqlalchemy/migrate_repo/versions/017_add_encryption_information.py:43
+#: cinder/db/sqlalchemy/migrate_repo/versions/017_add_encryption_information.py:49
+#, python-format
+msgid "Column |%s| not created!"
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/017_add_encryption_information.py:92
+msgid "encryption_key_id column not dropped from volumes"
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/017_add_encryption_information.py:100
+msgid "encryption_key_id column not dropped from snapshots"
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/017_add_encryption_information.py:105
+msgid "volume_type_id column not dropped from snapshots"
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/017_add_encryption_information.py:113
+msgid "encryption table not dropped"
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/018_add_qos_specs.py:49
+msgid "Table quality_of_service_specs not created!"
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/018_add_qos_specs.py:60
+msgid "Added qos_specs_id column to volume type table failed."
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/018_add_qos_specs.py:85
+msgid "Dropping foreign key volume_types_ibfk_1 failed"
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/018_add_qos_specs.py:93
+msgid "Dropping qos_specs_id column failed."
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/018_add_qos_specs.py:100
+msgid "Dropping quality_of_service_specs table failed."
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/020_add_volume_admin_metadata_table.py:59
+msgid "volume_admin_metadata table not dropped"
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/021_add_default_quota_class.py:48
+msgid ""
+"Found existing 'default' entries in the quota_classes table.  Skipping "
+"insertion of default values."
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/021_add_default_quota_class.py:72
+msgid "Added default quota class data into the DB."
+msgstr ""
+
+#: cinder/db/sqlalchemy/migrate_repo/versions/021_add_default_quota_class.py:74
+msgid "Default quota class data not inserted into the DB."
+msgstr ""
+
+#: cinder/image/glance.py:162 cinder/image/glance.py:170
+#, python-format
+msgid "Error contacting glance server '%(netloc)s' for '%(method)s', %(extra)s."
+msgstr ""
+
+#: cinder/image/image_utils.py:94 cinder/image/image_utils.py:199
+msgid "'qemu-img info' parsing failed."
+msgstr ""
+
+#: cinder/image/image_utils.py:101
+#, python-format
+msgid "fmt=%(fmt)s backed by: %(backing_file)s"
+msgstr ""
+
+#: cinder/image/image_utils.py:109 cinder/image/image_utils.py:192
+#, python-format
+msgid ""
+"Size is %(image_size)dGB and doesn't fit in a volume of size "
+"%(volume_size)dGB."
+msgstr ""
+
+#: cinder/image/image_utils.py:157
+#, python-format
+msgid ""
+"qemu-img is not installed and image is of type %s.  Only RAW images can "
+"be used if qemu-img is not installed."
+msgstr ""
+
+#: cinder/image/image_utils.py:164
+msgid ""
+"qemu-img is not installed and the disk format is not specified.  Only RAW"
+" images can be used if qemu-img is not installed."
+msgstr ""
+
+#: cinder/image/image_utils.py:178
+#, python-format
+msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
+msgstr ""
+
+#: cinder/image/image_utils.py:206
+#, python-format
+msgid "fmt=%(fmt)s backed by:%(backing_file)s"
+msgstr ""
+
+#: cinder/image/image_utils.py:224
+#, python-format
+msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
+msgstr ""
+
+#: cinder/image/image_utils.py:260
+#, python-format
+msgid "Converted to %(f1)s, but format is now %(f2)s"
+msgstr ""
+
+#: cinder/keymgr/conf_key_mgr.py:78
+msgid ""
+"config option keymgr.fixed_key has not been defined: some operations may "
+"fail unexpectedly"
+msgstr ""
+
+#: cinder/keymgr/conf_key_mgr.py:80
+msgid "keymgr.fixed_key not defined"
+msgstr ""
+
+#: cinder/keymgr/conf_key_mgr.py:134
+#, python-format
+msgid "Not deleting key %s"
+msgstr ""
+
+#: cinder/openstack/common/eventlet_backdoor.py:140
+#, python-format
+msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
+msgstr ""
+
+#: 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"
+msgstr ""
+
+#: cinder/openstack/common/gettextutils.py:271
+msgid "Message objects do not support addition."
+msgstr ""
+
+#: cinder/openstack/common/gettextutils.py:280
+msgid ""
+"Message objects do not support str() because they may contain non-ascii "
+"characters. Please use unicode() or translate() instead."
+msgstr ""
+
+#: cinder/openstack/common/imageutils.py:75
+#, python-format
+msgid "Invalid input value \"%s\"."
+msgstr ""
+
+#: cinder/openstack/common/imageutils.py:104
+msgid "Snapshot list encountered but no header found!"
+msgstr ""
+
+#: cinder/openstack/common/lockutils.py:102
+#, python-format
+msgid "Could not release the acquired lock `%s`"
+msgstr ""
+
+#: cinder/openstack/common/lockutils.py:189
+#, python-format
+msgid "Got semaphore \"%(lock)s\" for method \"%(method)s\"..."
+msgstr ""
+
+#: cinder/openstack/common/lockutils.py:200
+#, python-format
+msgid "Attempting to grab file lock \"%(lock)s\" for method \"%(method)s\"..."
+msgstr ""
+
+#: cinder/openstack/common/lockutils.py:227
+#, python-format
+msgid "Got file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
+msgstr ""
+
+#: cinder/openstack/common/lockutils.py:235
+#, python-format
+msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
+msgstr ""
+
+#: cinder/openstack/common/log.py:327
+#, python-format
+msgid "Deprecated: %s"
+msgstr ""
+
+#: cinder/openstack/common/log.py:438
+#, python-format
+msgid "Error loading logging config %(log_config)s: %(err_msg)s"
+msgstr ""
+
+#: cinder/openstack/common/log.py:489
+#, python-format
+msgid "syslog facility must be one of: %s"
+msgstr ""
+
+#: cinder/openstack/common/log.py:710
+#, python-format
+msgid "Fatal call to deprecated config: %(msg)s"
+msgstr ""
+
+#: cinder/openstack/common/loopingcall.py:82
+#, python-format
+msgid "task run outlasted interval by %s sec"
+msgstr ""
+
+#: cinder/openstack/common/loopingcall.py:89
+#: cinder/tests/brick/test_brick_connector.py:460
+msgid "in fixed duration looping call"
+msgstr ""
+
+#: cinder/openstack/common/loopingcall.py:129
+#, python-format
+msgid "Dynamic looping call sleeping for %.02f seconds"
+msgstr ""
+
+#: cinder/openstack/common/loopingcall.py:136
+msgid "in dynamic looping call"
+msgstr ""
+
+#: cinder/openstack/common/periodic_task.py:43
+#, python-format
+msgid "Unexpected argument for periodic task creation: %(arg)s."
+msgstr ""
+
+#: cinder/openstack/common/periodic_task.py:134
+#, python-format
+msgid "Skipping periodic task %(task)s because its interval is negative"
+msgstr ""
+
+#: cinder/openstack/common/periodic_task.py:139
+#, python-format
+msgid "Skipping periodic task %(task)s because it is disabled"
+msgstr ""
+
+#: cinder/openstack/common/periodic_task.py:177
+#, python-format
+msgid "Running periodic task %(full_task_name)s"
+msgstr ""
+
+#: cinder/openstack/common/periodic_task.py:186
+#, python-format
+msgid "Error during %(full_task_name)s: %(e)s"
+msgstr ""
+
+#: cinder/openstack/common/policy.py:149
+#, python-format
+msgid ""
+"Inheritance-based rules are deprecated; use the default brain instead of "
+"%s."
+msgstr ""
+
+#: cinder/openstack/common/policy.py:163
+#, python-format
+msgid "Failed to understand rule %(match)r"
+msgstr ""
+
+#: cinder/openstack/common/policy.py:173
+#, python-format
+msgid "Inheritance-based rules are deprecated; update _check_%s"
+msgstr ""
+
+#: cinder/openstack/common/policy.py:180
+#, python-format
+msgid "No handler for matches of kind %s"
+msgstr ""
+
+#: cinder/openstack/common/processutils.py:127
+#, python-format
+msgid "Got unknown keyword args to utils.execute: %r"
+msgstr ""
+
+#: cinder/openstack/common/processutils.py:142
+#, python-format
+msgid "Running cmd (subprocess): %s"
+msgstr ""
+
+#: cinder/openstack/common/processutils.py:167
+#: cinder/openstack/common/processutils.py:239
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:448
+#, python-format
+msgid "Result was %s"
+msgstr ""
+
+#: cinder/openstack/common/processutils.py:179
+#, python-format
+msgid "%r failed. Retrying."
+msgstr ""
+
+#: cinder/openstack/common/processutils.py:218
+#, python-format
+msgid "Running cmd (SSH): %s"
+msgstr ""
+
+#: cinder/openstack/common/processutils.py:220
+msgid "Environment not supported over SSH"
+msgstr ""
+
+#: cinder/openstack/common/processutils.py:224
+msgid "process_input not supported over SSH"
+msgstr ""
+
+#: cinder/openstack/common/request_utils.py:66
+#, python-format
+msgid "TargetId=%(id)s "
+msgstr ""
+
+#: cinder/openstack/common/request_utils.py:70
+#, python-format
+msgid "Target='%(name)s' "
+msgstr ""
+
+#: cinder/openstack/common/request_utils.py:76
+#, python-format
+msgid ""
+"Request ID Link: %(event_name)s "
+"'%(source_id)s'%(arrow)s%(target_name)s%(target_id)s"
+msgstr ""
+
+#: cinder/openstack/common/service.py:175
+#: cinder/openstack/common/service.py:269
+#, python-format
+msgid "Caught %s, exiting"
+msgstr ""
+
+#: cinder/openstack/common/service.py:187
+msgid "Exception during rpc cleanup."
+msgstr ""
+
+#: cinder/openstack/common/service.py:238
+msgid "Parent process has died unexpectedly, exiting"
+msgstr ""
+
+#: cinder/openstack/common/service.py:275
+msgid "Unhandled exception"
+msgstr ""
+
+#: cinder/openstack/common/service.py:308
+msgid "Forking too fast, sleeping"
+msgstr ""
+
+#: cinder/openstack/common/service.py:327
+#, python-format
+msgid "Started child %d"
+msgstr ""
+
+#: cinder/openstack/common/service.py:337
+#, python-format
+msgid "Starting %d workers"
+msgstr ""
+
+#: cinder/openstack/common/service.py:354
+#, python-format
+msgid "Child %(pid)d killed by signal %(sig)d"
+msgstr ""
+
+#: cinder/openstack/common/service.py:358
+#, python-format
+msgid "Child %(pid)s exited with status %(code)d"
+msgstr ""
+
+#: cinder/openstack/common/service.py:362
+#, python-format
+msgid "pid %d not in child list"
+msgstr ""
+
+#: cinder/openstack/common/service.py:392
+#, python-format
+msgid "Caught %s, stopping children"
+msgstr ""
+
+#: cinder/openstack/common/service.py:410
+#, python-format
+msgid "Waiting on %d children to exit"
+msgstr ""
+
+#: cinder/openstack/common/sslutils.py:98
+#, python-format
+msgid "Invalid SSL version : %s"
+msgstr ""
+
+#: cinder/openstack/common/strutils.py:92
+#, python-format
+msgid "Unrecognized value '%(val)s', acceptable values are: %(acceptable)s"
+msgstr ""
+
+#: cinder/openstack/common/strutils.py:202
+#, python-format
+msgid "Invalid unit system: \"%s\""
+msgstr ""
+
+#: cinder/openstack/common/strutils.py:211
+#, python-format
+msgid "Invalid string format: %s"
+msgstr ""
+
+#: cinder/openstack/common/versionutils.py:69
+#, python-format
+msgid ""
+"%(what)s is deprecated as of %(as_of)s in favor of %(in_favor_of)s and "
+"may be removed in %(remove_in)s."
+msgstr ""
+
+#: cinder/openstack/common/versionutils.py:73
+#, python-format
+msgid ""
+"%(what)s is deprecated as of %(as_of)s and may be removed in "
+"%(remove_in)s. It will not be superseded."
+msgstr ""
+
+#: cinder/openstack/common/crypto/utils.py:29
+msgid "An unknown error occurred in crypto utils."
+msgstr ""
+
+#: cinder/openstack/common/crypto/utils.py:36
+#, python-format
+msgid "Block size of %(given)d is too big, max = %(maximum)d"
+msgstr ""
+
+#: cinder/openstack/common/crypto/utils.py:45
+#, python-format
+msgid "Length of %(given)d is too long, max = %(maximum)d"
+msgstr ""
+
+#: cinder/openstack/common/db/exception.py:44
+msgid "Invalid Parameter: Unicode is not supported by the current database."
+msgstr ""
+
+#: cinder/openstack/common/db/sqlalchemy/session.py:487
+msgid "DB exception wrapped."
+msgstr ""
+
+#: cinder/openstack/common/db/sqlalchemy/session.py:538
+#, python-format
+msgid "Got mysql server has gone away: %s"
+msgstr ""
+
+#: cinder/openstack/common/db/sqlalchemy/session.py:610
+#, python-format
+msgid "SQL connection failed. %s attempts left."
+msgstr ""
+
+#: cinder/openstack/common/db/sqlalchemy/utils.py:33
+msgid "Sort key supplied was not valid."
+msgstr ""
+
+#: cinder/openstack/common/scheduler/filters/capabilities_filter.py:54
+#, python-format
+msgid "extra_spec requirement '%(req)s' does not match '%(cap)s'"
+msgstr ""
+
+#: cinder/openstack/common/scheduler/filters/capabilities_filter.py:67
+#, python-format
+msgid "%(host_state)s fails resource_type extra_specs requirements"
+msgstr ""
+
+#: cinder/openstack/common/scheduler/filters/ignore_attempted_hosts_filter.py:43
+msgid "Re-scheduling is disabled."
+msgstr ""
+
+#: cinder/openstack/common/scheduler/filters/ignore_attempted_hosts_filter.py:52
+#, python-format
+msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
+msgstr ""
+
+#: cinder/scheduler/driver.py:69
+msgid "Must implement host_passes_filters"
+msgstr ""
+
+#: cinder/scheduler/driver.py:74
+msgid "Must implement find_retype_host"
+msgstr ""
+
+#: cinder/scheduler/driver.py:78
+msgid "Must implement a fallback schedule"
+msgstr ""
+
+#: cinder/scheduler/driver.py:82
+msgid "Must implement schedule_create_volume"
+msgstr ""
+
+#: cinder/scheduler/filter_scheduler.py:98
+#, python-format
+msgid "cannot place volume %(id)s on %(host)s"
+msgstr ""
+
+#: cinder/scheduler/filter_scheduler.py:114
+#, python-format
+msgid "No valid hosts for volume %(id)s with type %(type)s"
+msgstr ""
+
+#: cinder/scheduler/filter_scheduler.py:125
+#, python-format
+msgid ""
+"Current host not valid for volume %(id)s with type %(type)s, migration "
+"not allowed"
+msgstr ""
+
+#: cinder/scheduler/filter_scheduler.py:156
+msgid "Invalid value for 'scheduler_max_attempts', must be >=1"
+msgstr ""
+
+#: cinder/scheduler/filter_scheduler.py:174
+#, python-format
+msgid ""
+"Error scheduling %(volume_id)s from last vol-service: %(last_host)s : "
+"%(exc)s"
+msgstr ""
+
+#: cinder/scheduler/filter_scheduler.py:207
+#, python-format
+msgid "Exceeded max scheduling attempts %(max_attempts)d for volume %(volume_id)s"
+msgstr ""
+
+#: cinder/scheduler/filter_scheduler.py:259
+#, python-format
+msgid "Filtered %s"
+msgstr ""
+
+#: cinder/scheduler/filter_scheduler.py:276
+#, python-format
+msgid "Choosing %s"
+msgstr ""
+
+#: cinder/scheduler/host_manager.py:266
+#, python-format
+msgid "Ignoring %(service_name)s service update from %(host)s"
+msgstr ""
+
+#: cinder/scheduler/host_manager.py:271
+#, python-format
+msgid "Received %(service_name)s service update from %(host)s."
+msgstr ""
+
+#: cinder/scheduler/host_manager.py:299
+#, python-format
+msgid "volume service is down. (host: %s)"
+msgstr ""
+
+#: cinder/scheduler/host_manager.py:320
+#, python-format
+msgid "Removing non-active host: %(host)s from scheduler cache."
+msgstr ""
+
+#: cinder/scheduler/manager.py:66
+msgid ""
+"ChanceScheduler and SimpleScheduler have been deprecated due to lack of "
+"support for advanced features like: volume types, volume encryption, QoS "
+"etc. These two schedulers can be fully replaced by FilterScheduler with "
+"certain combination of filters and weighers."
+msgstr ""
+
+#: cinder/scheduler/manager.py:101 cinder/scheduler/manager.py:103
+msgid "Failed to create scheduler manager volume flow"
+msgstr ""
+
+#: cinder/scheduler/manager.py:162
+msgid "New volume type not specified in request_spec."
+msgstr ""
+
+#: cinder/scheduler/manager.py:177
+#, python-format
+msgid "Could not find a host for volume %(volume_id)s with type %(type_id)s."
+msgstr ""
+
+#: cinder/scheduler/manager.py:219
+#, python-format
+msgid "Failed to schedule_%(method)s: %(ex)s"
+msgstr ""
+
+#: cinder/scheduler/scheduler_options.py:68
+#, python-format
+msgid "Could not stat scheduler options file %(filename)s: '%(e)s'"
+msgstr ""
+
+#: cinder/scheduler/scheduler_options.py:78
+#, python-format
+msgid "Could not decode scheduler options: '%s'"
+msgstr ""
+
+#: cinder/scheduler/filters/capacity_filter.py:43
+msgid "Free capacity not set: volume node info collection broken."
+msgstr ""
+
+#: cinder/scheduler/filters/capacity_filter.py:57
+#, python-format
+msgid ""
+"Insufficient free space for volume creation (requested / avail): "
+"%(requested)s/%(available)s"
+msgstr ""
+
+#: cinder/scheduler/flows/create_volume.py:53
+msgid "No volume_id provided to populate a request_spec from"
+msgstr ""
+
+#: cinder/scheduler/flows/create_volume.py:116
+#, python-format
+msgid "Failed to schedule_create_volume: %(cause)s"
+msgstr ""
+
+#: cinder/scheduler/flows/create_volume.py:133
+#, python-format
+msgid "Failed notifying on %(topic)s payload %(payload)s"
+msgstr ""
+
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:883
+#, python-format
+msgid "FAKE ISCSI: %s"
+msgstr ""
+
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
+#, python-format
+msgid "FAKE ISER: %s"
+msgstr ""
+
+#: cinder/tests/fake_driver.py:97
+msgid "local_path not implemented"
+msgstr ""
+
+#: cinder/tests/fake_driver.py:124 cinder/tests/fake_driver.py:129
+#, python-format
+msgid "LoggingVolumeDriver: %s"
+msgstr ""
+
+#: cinder/tests/fake_utils.py:70
+#, python-format
+msgid "Faking execution of cmd (subprocess): %s"
+msgstr ""
+
+#: cinder/tests/fake_utils.py:78
+#, python-format
+msgid "Faked command matched %s"
+msgstr ""
+
+#: cinder/tests/fake_utils.py:94
+#, python-format
+msgid "Faked command raised an exception %s"
+msgstr ""
+
+#: cinder/tests/fake_utils.py:97
+#, python-format
+msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
+msgstr ""
+
+#: cinder/tests/test_backup_ceph.py:836
+#, python-format
+msgid ""
+"Failed to backup volume metadata - Metadata backup object "
+"'backup.%s.meta' already exists"
+msgstr ""
+
+#: cinder/tests/test_ibm_xiv_ds8k.py:102
+#, python-format
+msgid "Volume not found for instance %(instance_id)s."
+msgstr ""
+
+#: cinder/tests/test_misc.py:58
+#, python-format
+msgid ""
+"The following migrations are missing a downgrade:\n"
+"\t%s"
+msgstr ""
+
+#: cinder/tests/test_netapp.py:1327
+msgid "Error not a TypeError."
+msgstr ""
+
+#: cinder/tests/test_netapp.py:1336
+msgid "Error not a KeyError."
+msgstr ""
+
+#: cinder/tests/test_netapp_nfs.py:362
+#, python-format
+msgid "Share %(share)s and file name %(file_name)s"
+msgstr ""
+
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
+msgid "flush() not supported in this version of librbd"
+msgstr ""
+
+#: cinder/tests/test_storwize_svc.py:252
+#, python-format
+msgid "unrecognized argument %s"
+msgstr ""
+
+#: cinder/tests/test_storwize_svc.py:1441
+#, python-format
+msgid "Run CLI command: %s"
+msgstr ""
+
+#: cinder/tests/test_storwize_svc.py:1445
+#, python-format
+msgid ""
+"CLI output:\n"
+" stdout: %(stdout)s\n"
+" stderr: %(stderr)s"
+msgstr ""
+
+#: cinder/tests/test_storwize_svc.py:1450
+#, python-format
+msgid ""
+"CLI Exception output:\n"
+" stdout: %(out)s\n"
+" stderr: %(err)s"
+msgstr ""
+
+#: cinder/tests/test_volume_types.py:60
+#, python-format
+msgid "Given data: %s"
+msgstr ""
+
+#: cinder/tests/test_volume_types.py:61
+#, python-format
+msgid "Result data: %s"
+msgstr ""
+
+#: cinder/tests/api/contrib/test_backups.py:734
+msgid "Invalid input"
+msgstr ""
+
+#: cinder/tests/brick/test_brick_remotefs.py:99
+msgid "Unexpected call to _execute."
+msgstr ""
+
+#: cinder/tests/brick/test_brick_remotefs.py:132
+msgid "mount failed."
+msgstr ""
+
+#: cinder/tests/integrated/test_login.py:29
+#, python-format
+msgid "volume: %s"
+msgstr ""
+
+#: cinder/tests/integrated/api/client.py:34
+#, python-format
+msgid ""
+"%(message)s\n"
+"Status Code: %(_status)s\n"
+"Body: %(_body)s"
+msgstr ""
+
+#: cinder/tests/integrated/api/client.py:44
+msgid "Authentication error"
+msgstr ""
+
+#: cinder/tests/integrated/api/client.py:52
+msgid "Authorization error"
+msgstr ""
+
+#: cinder/tests/integrated/api/client.py:60
+msgid "Item not found"
+msgstr ""
+
+#: cinder/tests/integrated/api/client.py:97
+#, python-format
+msgid "Doing %(method)s on %(relative_url)s"
+msgstr ""
+
+#: cinder/tests/integrated/api/client.py:100
+#, python-format
+msgid "Body: %s"
+msgstr ""
+
+#: cinder/tests/integrated/api/client.py:124
+#, python-format
+msgid "%(auth_uri)s => code %(http_status)s"
+msgstr ""
+
+#: cinder/tests/integrated/api/client.py:147
+#, python-format
+msgid "%(relative_uri)s => code %(http_status)s"
+msgstr ""
+
+#: cinder/tests/integrated/api/client.py:158
+msgid "Unexpected status code"
+msgstr ""
+
+#: cinder/tests/integrated/api/client.py:165
+#, python-format
+msgid "Decoding JSON: %s"
+msgstr ""
+
+#: cinder/tests/zonemanager/test_brcd_fc_zone_driver.py:124
+#, python-format
+msgid "In Add GlobalVars._active_cfg: %s"
+msgstr ""
+
+#: cinder/tests/zonemanager/test_brcd_fc_zone_driver.py:126
+#, python-format
+msgid "In Add GlobalVars._is_normal_test: %s"
+msgstr ""
+
+#: cinder/tests/zonemanager/test_brcd_fc_zone_driver.py:128
+#, python-format
+msgid "In Add GlobalVars._zone_state: %s"
+msgstr ""
+
+#: cinder/tests/zonemanager/test_brcd_fc_zone_driver.py:179
+#, python-format
+msgid "User: %s"
+msgstr ""
+
+#: cinder/tests/zonemanager/test_brcd_fc_zone_driver.py:180
+#, python-format
+msgid "_zone_state: %s"
+msgstr ""
+
+#: cinder/tests/zonemanager/test_brcd_fc_zone_driver.py:185
+#, python-format
+msgid "Inside get_active_zone_set %s"
+msgstr ""
+
+#: cinder/transfer/api.py:68
+msgid "Volume in unexpected state"
+msgstr ""
+
+#: cinder/transfer/api.py:102 cinder/volume/api.py:350
+msgid "status must be available"
+msgstr ""
+
+#: cinder/transfer/api.py:119
+#, python-format
+msgid "Failed to create transfer record for %s"
+msgstr ""
+
+#: cinder/transfer/api.py:136
+#, python-format
+msgid "Attempt to transfer %s with invalid auth key."
+msgstr ""
+
+#: cinder/transfer/api.py:156 cinder/volume/flows/api/create_volume.py:508
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to create %(s_size)sG volume "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)"
+msgstr ""
+
+#: cinder/transfer/api.py:182
+#, python-format
+msgid "Failed to update quota donating volumetransfer id %s"
+msgstr ""
+
+#: cinder/transfer/api.py:199
+#, python-format
+msgid "Volume %s has been transferred."
+msgstr ""
+
+#: 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:185 cinder/volume/api.py:187
+msgid "Failed to create api volume flow"
+msgstr ""
+
+#: cinder/volume/api.py:216
+msgid "Failed to update quota for deleting volume"
+msgstr ""
+
+#: 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:238
+msgid "Volume cannot be deleted while migrating"
+msgstr ""
+
+#: cinder/volume/api.py:243
+#, python-format
+msgid "Volume still has %d dependent snapshots"
+msgstr ""
+
+#: cinder/volume/api.py:293 cinder/volume/api.py:333
+#: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
+#, python-format
+msgid "Searching by: %s"
+msgstr ""
+
+#: cinder/volume/api.py:353
+msgid "already attached"
+msgstr ""
+
+#: cinder/volume/api.py:360
+msgid "status must be in-use to detach"
+msgstr ""
+
+#: cinder/volume/api.py:371
+msgid "Volume status must be available to reserve"
+msgstr ""
+
+#: cinder/volume/api.py:447
+msgid "Snapshot cannot be created while volume is migrating"
+msgstr ""
+
+#: cinder/volume/api.py:451
+msgid "must be available"
+msgstr ""
+
+#: cinder/volume/api.py:473
+#, 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:485
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
+"snapshots already consumed)"
+msgstr ""
+
+#: cinder/volume/api.py:536
+msgid "Volume Snapshot status must be available or error"
+msgstr ""
+
+#: cinder/volume/api.py:564 cinder/volume/flows/api/create_volume.py:208
+msgid "Metadata property key blank"
+msgstr ""
+
+#: cinder/volume/api.py:568
+msgid "Metadata property key greater than 255 characters"
+msgstr ""
+
+#: cinder/volume/api.py:572
+msgid "Metadata property value greater than 255 characters"
+msgstr ""
+
+#: cinder/volume/api.py:703 cinder/volume/api.py:777
+msgid "Volume status must be available/in-use."
+msgstr ""
+
+#: cinder/volume/api.py:706
+msgid "Volume status is in-use."
+msgstr ""
+
+#: cinder/volume/api.py:735
+msgid "Volume status must be available to extend."
+msgstr ""
+
+#: cinder/volume/api.py:740
+#, 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:755
+#, 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:783
+msgid "Volume is already part of an active migration"
+msgstr ""
+
+#: cinder/volume/api.py:789
+msgid "volume must not have snapshots"
+msgstr ""
+
+#: cinder/volume/api.py:804
+#, python-format
+msgid "No available service named %s"
+msgstr ""
+
+#: cinder/volume/api.py:810
+msgid "Destination host must be different than current host"
+msgstr ""
+
+#: cinder/volume/api.py:840
+msgid "Source volume not mid-migration."
+msgstr ""
+
+#: cinder/volume/api.py:844
+msgid "Destination volume not mid-migration."
+msgstr ""
+
+#: cinder/volume/api.py:849
+#, python-format
+msgid "Destination has migration_status %(stat)s, expected %(exp)s."
+msgstr ""
+
+#: cinder/volume/api.py:860
+msgid "Volume status must be available to update readonly flag."
+msgstr ""
+
+#: cinder/volume/api.py:869
+#, python-format
+msgid "Unable to update type due to incorrect status on volume: %s"
+msgstr ""
+
+#: cinder/volume/api.py:875
+#, python-format
+msgid "Volume %s is already part of an active migration."
+msgstr ""
+
+#: cinder/volume/api.py:881
+#, python-format
+msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
+msgstr ""
+
+#: cinder/volume/api.py:894
+#, python-format
+msgid "Invalid volume_type passed: %s"
+msgstr ""
+
+#: cinder/volume/api.py:907
+#, python-format
+msgid "New volume_type same as original: %s"
+msgstr ""
+
+#: cinder/volume/api.py:922
+msgid "Retype cannot change encryption requirements"
+msgstr ""
+
+#: cinder/volume/api.py:934
+msgid "Retype cannot change front-end qos specs for in-use volumes"
+msgstr ""
+
+#: cinder/volume/api.py:966
+msgid "Unable to find service for given host."
+msgstr ""
+
+#: cinder/volume/driver.py:195 cinder/volume/drivers/netapp/nfs.py:176
+#, python-format
+msgid "Recovering from a failed execute.  Try number %s"
+msgstr ""
+
+#: cinder/volume/driver.py:278
+#, python-format
+msgid "copy_data_between_volumes %(src)s -> %(dest)s."
+msgstr ""
+
+#: cinder/volume/driver.py:291 cinder/volume/driver.py:305
+#, python-format
+msgid "Failed to attach volume %(vol)s"
+msgstr ""
+
+#: cinder/volume/driver.py:322
+#, python-format
+msgid "Failed to copy volume %(src)s to %(dest)d"
+msgstr ""
+
+#: cinder/volume/driver.py:335
+#, python-format
+msgid "copy_image_to_volume %s."
+msgstr ""
+
+#: cinder/volume/driver.py:352
+#, python-format
+msgid "copy_volume_to_image %s."
+msgstr ""
+
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
+#, python-format
+msgid "Unable to fetch connection information from backend: %(err)s"
+msgstr ""
+
+#: cinder/volume/driver.py:402
+#, python-format
+msgid "Error encountered during cleanup of a failed attach: %(ex)s"
+msgstr ""
+
+#: cinder/volume/driver.py:422
+#, python-format
+msgid "Unable to access the backend storage via the path %(path)s."
+msgstr ""
+
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
+#, python-format
+msgid "Unable to terminate volume connection: %(err)s"
+msgstr ""
+
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
+#, python-format
+msgid "volume %s: removing export"
+msgstr ""
+
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/driver.py:490
+#, python-format
+msgid "Creating a new backup for volume %s."
+msgstr ""
+
+#: cinder/volume/driver.py:507
+#, python-format
+msgid "Restoring backup %(backup)s to volume %(volume)s."
+msgstr ""
+
+#: cinder/volume/driver.py:529
+msgid "Extend volume not implemented"
+msgstr ""
+
+#: cinder/volume/driver.py:593 cinder/volume/driver.py:601
+msgid "Manage existing volume not implemented."
+msgstr ""
+
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
+msgid "ISCSI provider_location not stored, using discovery"
+msgstr ""
+
+#: cinder/volume/driver.py:652
+#, python-format
+msgid "ISCSI discovery attempt failed for:%s"
+msgstr ""
+
+#: cinder/volume/driver.py:654
+#, python-format
+msgid "Error from iscsiadm -m discovery: %s"
+msgstr ""
+
+#: cinder/volume/driver.py:701
+#, python-format
+msgid "Could not find iSCSI export for volume %s"
+msgstr ""
+
+#: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
+#, python-format
+msgid "ISCSI Discovery: Found %s"
+msgstr ""
+
+#: cinder/volume/driver.py:802
+msgid "The volume driver requires the iSCSI initiator name in the connector."
+msgstr ""
+
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
+#: cinder/volume/drivers/zadara.py:650
+#: cinder/volume/drivers/emc/emc_smis_common.py:1025
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
+#: cinder/volume/drivers/netapp/iscsi.py:1058
+#: cinder/volume/drivers/netapp/iscsi.py:1472
+#: cinder/volume/drivers/nexenta/iscsi.py:575
+#: cinder/volume/drivers/windows/windows.py:205
+msgid "Updating volume stats"
+msgstr ""
+
+#: cinder/volume/driver.py:1060
+msgid "Driver must implement initialize_connection"
+msgstr ""
+
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+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:572
+#: 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:173
+#, python-format
+msgid "Driver path %s is deprecated, update your configuration to the new path."
+msgstr ""
+
+#: cinder/volume/manager.py:204
+#, python-format
+msgid ""
+"Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
+"%(drv_version)s"
+msgstr ""
+
+#: cinder/volume/manager.py:210
+#, python-format
+msgid "Starting volume driver %(driver_name)s (%(version)s)"
+msgstr ""
+
+#: cinder/volume/manager.py:217
+#, python-format
+msgid "Error encountered during initialization of driver: %(name)s"
+msgstr ""
+
+#: cinder/volume/manager.py:226
+#, python-format
+msgid "Re-exporting %s volumes"
+msgstr ""
+
+#: cinder/volume/manager.py:239
+#, python-format
+msgid "Failed to re-export volume %s: setting to error state"
+msgstr ""
+
+#: cinder/volume/manager.py:246
+#, python-format
+msgid "volume %s stuck in a downloading state"
+msgstr ""
+
+#: cinder/volume/manager.py:253
+#, python-format
+msgid "volume %s: skipping export"
+msgstr ""
+
+#: cinder/volume/manager.py:255
+#, python-format
+msgid ""
+"Error encountered during re-exporting phase of driver initialization:  "
+"%(name)s"
+msgstr ""
+
+#: cinder/volume/manager.py:265
+msgid "Resuming any in progress delete operations"
+msgstr ""
+
+#: cinder/volume/manager.py:268
+#, python-format
+msgid "Resuming delete on volume: %s"
+msgstr ""
+
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
+msgid "Failed to create manager volume flow"
+msgstr ""
+
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
+#, python-format
+msgid "volume %s: deleting"
+msgstr ""
+
+#: cinder/volume/manager.py:362
+msgid "volume is not local to this node"
+msgstr ""
+
+#: cinder/volume/manager.py:379
+#, python-format
+msgid "Cannot delete volume %s: volume is busy"
+msgstr ""
+
+#: cinder/volume/manager.py:406
+msgid "Failed to update usages deleting volume"
+msgstr ""
+
+#: cinder/volume/manager.py:412
+#, python-format
+msgid "volume %s: deleted successfully"
+msgstr ""
+
+#: cinder/volume/manager.py:429
+#, python-format
+msgid "snapshot %s: creating"
+msgstr ""
+
+#: cinder/volume/manager.py:440
+#, python-format
+msgid "snapshot %(snap_id)s: creating"
+msgstr ""
+
+#: cinder/volume/manager.py:468
+#, python-format
+msgid ""
+"Failed updating %(snapshot_id)s metadata using the provided volumes "
+"%(volume_id)s metadata"
+msgstr ""
+
+#: cinder/volume/manager.py:474
+#, python-format
+msgid "snapshot %s: created successfully"
+msgstr ""
+
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
+#, python-format
+msgid "snapshot %s: deleting"
+msgstr ""
+
+#: cinder/volume/manager.py:504
+#, python-format
+msgid "Cannot delete snapshot %s: snapshot is busy"
+msgstr ""
+
+#: cinder/volume/manager.py:534
+msgid "Failed to update usages deleting snapshot"
+msgstr ""
+
+#: cinder/volume/manager.py:537
+#, python-format
+msgid "snapshot %s: deleted successfully"
+msgstr ""
+
+#: cinder/volume/manager.py:557
+msgid "being attached by another instance"
+msgstr ""
+
+#: cinder/volume/manager.py:561
+msgid "being attached by another host"
+msgstr ""
+
+#: cinder/volume/manager.py:565
+msgid "being attached by different mode"
+msgstr ""
+
+#: cinder/volume/manager.py:568
+msgid "status must be available or attaching"
+msgstr ""
+
+#: cinder/volume/manager.py:661
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:686
+#, python-format
+msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
+msgstr ""
+
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
+#, python-format
+msgid "Zoning Mode: %s"
+msgstr ""
+
+#: cinder/volume/manager.py:892
+msgid "failed to create new_volume on destination host"
+msgstr ""
+
+#: cinder/volume/manager.py:895
+msgid "timeout creating new_volume on destination host"
+msgstr ""
+
+#: cinder/volume/manager.py:918
+#, python-format
+msgid "Failed to copy volume %(vol1)s to %(vol2)s"
+msgstr ""
+
+#: cinder/volume/manager.py:947
+#, python-format
+msgid ""
+"migrate_volume_completion: completing migration for volume %(vol1)s "
+"(temporary volume %(vol2)s"
+msgstr ""
+
+#: cinder/volume/manager.py:959
+#, python-format
+msgid ""
+"migrate_volume_completion is cleaning up an error for volume %(vol1)s "
+"(temporary volume %(vol2)s"
+msgstr ""
+
+#: cinder/volume/manager.py:978
+#, python-format
+msgid "Failed to delete migration source vol %(vol)s: %(err)s"
+msgstr ""
+
+#: cinder/volume/manager.py:1014
+#, python-format
+msgid "volume %s: calling driver migrate_volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:226
+msgid "Updating volume status"
+msgstr ""
+
+#: cinder/volume/manager.py:1062
+#, python-format
+msgid ""
+"Unable to update stats, %(driver_name)s -%(driver_version)s "
+"%(config_group)s driver is uninitialized."
+msgstr ""
+
+#: cinder/volume/manager.py:1084
+#, python-format
+msgid "Notification {%s} received"
+msgstr ""
+
+#: cinder/volume/manager.py:1119
+#, python-format
+msgid "volume %s: extending"
+msgstr ""
+
+#: cinder/volume/manager.py:1121
+#, python-format
+msgid "volume %s: extended successfully"
+msgstr ""
+
+#: cinder/volume/manager.py:1123
+#, python-format
+msgid "volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1128
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1188
+msgid "Failed to update usages while retyping volume."
+msgstr ""
+
+#: cinder/volume/manager.py:1189
+msgid "Failed to get old volume type quota reservations"
+msgstr ""
+
+#: cinder/volume/manager.py:1209
+#, python-format
+msgid "Volume %s: retyped successfully"
+msgstr ""
+
+#: cinder/volume/manager.py:1212
+#, python-format
+msgid ""
+"Volume %s: driver error when trying to retype, falling back to generic "
+"mechanism."
+msgstr ""
+
+#: cinder/volume/manager.py:1223
+msgid "Retype requires migration but is not allowed."
+msgstr ""
+
+#: cinder/volume/manager.py:1231
+msgid "Volume must not have snapshots."
+msgstr ""
+
+#: cinder/volume/manager.py:1267
+msgid "Failed to create manage_existing flow."
+msgstr ""
+
+#: cinder/volume/manager.py:1269
+msgid "Failed to create manage existing flow."
+msgstr ""
+
+#: cinder/volume/manager.py:1293
+#, python-format
+msgid "Initiator Target map:%s"
+msgstr ""
+
+#: cinder/volume/manager.py:1298
+#, python-format
+msgid "Zoning op: %s"
+msgstr ""
+
+#: cinder/volume/qos_specs.py:57
+#, python-format
+msgid "Valid consumer of QoS specs are: %s"
+msgstr ""
+
+#: cinder/volume/qos_specs.py:84 cinder/volume/qos_specs.py:105
+#: cinder/volume/qos_specs.py:155 cinder/volume/qos_specs.py:197
+#: cinder/volume/qos_specs.py:211 cinder/volume/qos_specs.py:225
+#: cinder/volume/volume_types.py:43
+#, python-format
+msgid "DB error: %s"
+msgstr ""
+
+#: cinder/volume/qos_specs.py:123 cinder/volume/qos_specs.py:140
+#: cinder/volume/qos_specs.py:272 cinder/volume/volume_types.py:52
+#: cinder/volume/volume_types.py:99
+msgid "id cannot be None"
+msgstr ""
+
+#: cinder/volume/qos_specs.py:156
+#, python-format
+msgid "Failed to get all associations of qos specs %s"
+msgstr ""
+
+#: cinder/volume/qos_specs.py:189
+#, python-format
+msgid ""
+"Type %(type_id)s is already associated with another qos specs: "
+"%(qos_specs_id)s"
+msgstr ""
+
+#: cinder/volume/qos_specs.py:198
+#, python-format
+msgid "Failed to associate qos specs %(id)s with type: %(vol_type_id)s"
+msgstr ""
+
+#: cinder/volume/qos_specs.py:212
+#, python-format
+msgid "Failed to disassociate qos specs %(id)s with type: %(vol_type_id)s"
+msgstr ""
+
+#: cinder/volume/qos_specs.py:226
+#, python-format
+msgid "Failed to disassociate qos specs %s."
+msgstr ""
+
+#: cinder/volume/qos_specs.py:284 cinder/volume/volume_types.py:111
+msgid "name cannot be None"
+msgstr ""
+
+#: cinder/volume/utils.py:116
+#, 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:177
+#, python-format
+msgid "Performing secure delete on volume: %s"
+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:138 cinder/volume/drivers/lvm.py:284
+#: 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:206
+msgid "No free disk"
+msgstr ""
+
+#: cinder/volume/drivers/block_device.py:219
+msgid "No big enough free disk"
+msgstr ""
+
+#: cinder/volume/drivers/coraid.py:84
+#, python-format
+msgid "Invalid ESM url scheme \"%s\". Supported https only."
+msgstr ""
+
+#: cinder/volume/drivers/coraid.py:111
+msgid "Invalid REST handle name. Expected path."
+msgstr ""
+
+#: cinder/volume/drivers/coraid.py:134
+#, python-format
+msgid "Call to json.loads() failed: %(ex)s. Response: %(resp)s"
+msgstr ""
+
+#: cinder/volume/drivers/coraid.py:224
+msgid "Session is expired. Relogin on ESM."
+msgstr ""
+
+#: cinder/volume/drivers/coraid.py:244
+msgid "Reply is empty."
+msgstr ""
+
+#: cinder/volume/drivers/coraid.py:246
+msgid "Error message is empty."
+msgstr ""
+
+#: cinder/volume/drivers/coraid.py:284
+#, python-format
+msgid "Coraid Appliance ping failed: %s"
+msgstr ""
+
+#: cinder/volume/drivers/coraid.py:297
+#, python-format
+msgid "Volume \"%(name)s\" created with VSX LUN \"%(lun)s\""
+msgstr ""
+
+#: cinder/volume/drivers/coraid.py:311
+#, python-format
+msgid "Volume \"%s\" deleted."
+msgstr ""
+
+#: cinder/volume/drivers/coraid.py:315
+#, python-format
+msgid "Resize volume \"%(name)s\" to %(size)s GB."
+msgstr ""
+
+#: cinder/volume/drivers/coraid.py:319
+#, python-format
+msgid "Repository for volume \"%(name)s\" found: \"%(repo)s\""
+msgstr ""
+
+#: cinder/volume/drivers/coraid.py:333
+#, python-format
+msgid "Volume \"%(name)s\" resized. New size is %(size)s GB."
+msgstr ""
+
+#: cinder/volume/drivers/coraid.py:385
+msgid "Cannot create clone volume in different repository."
+msgstr ""
+
+#: cinder/volume/drivers/coraid.py:505
+#, python-format
+msgid "Initialize connection %(shelf)s/%(lun)s for %(name)s"
+msgstr ""
+
+#: cinder/volume/drivers/eqlx.py:139
+#, python-format
+msgid ""
+"CLI output\n"
+"%s"
+msgstr ""
+
+#: cinder/volume/drivers/eqlx.py:154
+msgid "Reading CLI MOTD"
+msgstr ""
+
+#: cinder/volume/drivers/eqlx.py:158
+#, python-format
+msgid "Setting CLI terminal width: '%s'"
+msgstr ""
+
+#: cinder/volume/drivers/eqlx.py:162
+#, python-format
+msgid "Sending CLI command: '%s'"
+msgstr ""
+
+#: cinder/volume/drivers/eqlx.py:169
+msgid "Error executing EQL command"
+msgstr ""
+
+#: cinder/volume/drivers/eqlx.py:199
+#, python-format
+msgid "EQL-driver: executing \"%s\""
+msgstr ""
+
+#: cinder/volume/drivers/eqlx.py:208
+#, python-format
+msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
+msgstr ""
+
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
+#, python-format
+msgid "Error running SSH command: %s"
+msgstr ""
+
+#: cinder/volume/drivers/eqlx.py:282
+#, python-format
+msgid "Volume %s does not exist, it may have already been deleted"
+msgstr ""
+
+#: cinder/volume/drivers/eqlx.py:300
+#, python-format
+msgid "EQL-driver: Setup is complete, group IP is %s"
+msgstr ""
+
+#: cinder/volume/drivers/eqlx.py:304
+msgid "Failed to setup the Dell EqualLogic driver"
+msgstr ""
+
+#: cinder/volume/drivers/eqlx.py:320
+#, python-format
+msgid "Failed to create volume %s"
+msgstr ""
+
+#: cinder/volume/drivers/eqlx.py:329
+#, python-format
+msgid "Volume %s was not found while trying to delete it"
+msgstr ""
+
+#: cinder/volume/drivers/eqlx.py:333
+#, python-format
+msgid "Failed to delete volume %s"
+msgstr ""
+
+#: cinder/volume/drivers/eqlx.py:348
+#, python-format
+msgid "Failed to create snapshot of volume %s"
+msgstr ""
+
+#: cinder/volume/drivers/eqlx.py:361
+#, python-format
+msgid "Failed to create volume from snapshot %s"
+msgstr ""
+
+#: cinder/volume/drivers/eqlx.py:374
+#, python-format
+msgid "Failed to create clone of volume %s"
+msgstr ""
+
+#: cinder/volume/drivers/eqlx.py:384
+#, python-format
+msgid "Failed to delete snapshot %(snap)s of volume %(vol)s"
+msgstr ""
+
+#: cinder/volume/drivers/eqlx.py:405
+#, python-format
+msgid "Failed to initialize connection to volume %s"
+msgstr ""
+
+#: cinder/volume/drivers/eqlx.py:415
+#, python-format
+msgid "Failed to terminate connection to volume %s"
+msgstr ""
+
+#: cinder/volume/drivers/eqlx.py:436
+#, python-format
+msgid "Volume %s is not found!, it may have been deleted"
+msgstr ""
+
+#: cinder/volume/drivers/eqlx.py:440
+#, python-format
+msgid "Failed to ensure export of volume %s"
+msgstr ""
+
+#: cinder/volume/drivers/eqlx.py:459
+#, python-format
+msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:102
+#, python-format
+msgid "There's no Gluster config file configured (%s)"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:107
+#, python-format
+msgid "Gluster config file at %(config)s doesn't exist"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:119
+msgid "mount.glusterfs is not installed"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:177
+#, python-format
+msgid "Cloning volume %(src)s to volume %(dst)s"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:182
+msgid "Volume status must be 'available'."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/netapp/nfs.py:787
+#, python-format
+msgid "casted to %s"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:232
+msgid "Snapshot status must be \"available\" to clone."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:254
+#, python-format
+msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:273
+#, python-format
+msgid "will copy from snapshot at %s"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
+#, python-format
+msgid "Volume %s does not have provider_location specified, skipping"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:394
+#, python-format
+msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:424
+#, python-format
+msgid "nova call result: %s"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:426
+msgid "Call to Nova to create snapshot failed"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:448
+msgid "Nova returned \"error\" status while creating snapshot."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:452
+#, python-format
+msgid "Status of snapshot %(id)s is now %(status)s"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:465
+#, python-format
+msgid "Timed out while waiting for Nova update for creation of snapshot %s."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:477
+#, python-format
+msgid "create snapshot: %s"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:478
+#, python-format
+msgid "volume id: %s"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:555
+msgid "'active' must be present when writing snap_info."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:585
+#, python-format
+msgid "deleting snapshot %s"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:589
+msgid "Volume status must be \"available\" or \"in-use\"."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:605
+#, python-format
+msgid ""
+"Snapshot record for %s is not present, allowing snapshot_delete to "
+"proceed."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:610
+#, python-format
+msgid "snapshot_file for this snap is %s"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:631
+#, python-format
+msgid "No base file found for %s."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:648
+#, python-format
+msgid "No %(base_id)s found for %(file)s"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:703
+#, python-format
+msgid "No file found with %s as backing file."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:713
+#, python-format
+msgid "No snap found with %s as backing file."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:724
+#, python-format
+msgid "No file depends on %s."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:750
+#, python-format
+msgid "Check condition failed: %s expected to be None."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:801
+msgid "Call to Nova delete snapshot failed"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:819
+#, python-format
+msgid "status of snapshot %s is still \"deleting\"... waiting"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:825
+#, python-format
+msgid "Unable to delete snapshot %(id)s, status: %(status)s."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:838
+#, python-format
+msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:927
+#, python-format
+msgid "%s must be a valid raw or qcow2 image."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:991
+msgid "Extend volume is only supported for this driver when no snapshots exist."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:999
+#, python-format
+msgid "Unrecognized backing format: %s"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1014
+#, python-format
+msgid "creating new volume at %s"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1017
+#, python-format
+msgid "file already exists at %s"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
+#, python-format
+msgid "Exception during mounting %s"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1045
+#, python-format
+msgid "Available shares: %s"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1062
+#, 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:1168
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1191
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
+#: cinder/volume/drivers/lvm.py:152
+#, python-format
+msgid "Volume device file path %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/lvm.py:159
+#, python-format
+msgid "Size for volume: %s not found, cannot secure delete."
+msgstr ""
+
+#: cinder/volume/drivers/lvm.py:229
+#, python-format
+msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgstr ""
+
+#: cinder/volume/drivers/lvm.py:246
+#, python-format
+msgid "snapshot: %s not found, skipping delete operations"
+msgstr ""
+
+#: cinder/volume/drivers/lvm.py:347
+#, python-format
+msgid "Unable to update stats on non-initialized Volume Group: %s"
+msgstr ""
+
+#: cinder/volume/drivers/lvm.py:403
+#, python-format
+msgid "Failed to rename logical volume %(name)s, error message was: %(err_msg)s"
+msgstr ""
+
+#: cinder/volume/drivers/lvm.py:419
+msgid "Reference must contain lv_name element."
+msgstr ""
+
+#: cinder/volume/drivers/lvm.py:436
+#, python-format
+msgid ""
+"Failed to manage existing volume %(name)s, because reported size %(size)s"
+" was not a floating-point number."
+msgstr ""
+
+#: cinder/volume/drivers/lvm.py:505
+#, python-format
+msgid "Error creating iSCSI target, retrying creation for target: %s"
+msgstr ""
+
+#: cinder/volume/drivers/nfs.py:128
+msgid "Driver specific implementation needs to return mount_point_base."
+msgstr ""
+
+#: cinder/volume/drivers/nfs.py:282
+#, python-format
+msgid "Expected volume size was %d"
+msgstr ""
+
+#: cinder/volume/drivers/nfs.py:283
+#, python-format
+msgid " but size is now %d"
+msgstr ""
+
+#: cinder/volume/drivers/nfs.py:380
+#, python-format
+msgid "%s is already mounted"
+msgstr ""
+
+#: cinder/volume/drivers/nfs.py:432
+#, python-format
+msgid "There's no NFS config file configured (%s)"
+msgstr ""
+
+#: cinder/volume/drivers/nfs.py:437
+#, python-format
+msgid "NFS config file at %(config)s doesn't exist"
+msgstr ""
+
+#: cinder/volume/drivers/nfs.py:442
+#, python-format
+msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
+msgstr ""
+
+#: cinder/volume/drivers/nfs.py:450
+#, python-format
+msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
+msgstr ""
+
+#: cinder/volume/drivers/nfs.py:504
+#, python-format
+msgid "Selected %s as target nfs share."
+msgstr ""
+
+#: cinder/volume/drivers/nfs.py:537
+#, python-format
+msgid "%s is above nfs_used_ratio"
+msgstr ""
+
+#: cinder/volume/drivers/nfs.py:540
+#, python-format
+msgid "%s is above nfs_oversub_ratio"
+msgstr ""
+
+#: cinder/volume/drivers/nfs.py:543
+#, python-format
+msgid "%s reserved space is above nfs_oversub_ratio"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:162
+#, python-format
+msgid "Invalid argument - whence=%s not supported"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:166
+msgid "Invalid argument"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:185
+msgid "fileno() not supported by RBD()"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:212
+#, python-format
+msgid "error opening rbd image %s"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:261
+msgid "rados and rbd python libraries not found"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:267
+msgid "error connecting to ceph cluster"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
+msgid "error refreshing volume stats"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:379
+#, python-format
+msgid "clone depth exceeds limit of %s"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:413
+#, python-format
+msgid "maximum clone depth (%d) has been reached - flattening source volume"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:425
+#, python-format
+msgid "flattening source volume %s"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:437
+#, python-format
+msgid "creating snapshot='%s'"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:447
+#, python-format
+msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:461
+msgid "clone created successfully"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:470
+#, python-format
+msgid "creating volume '%s'"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:486
+#, python-format
+msgid "flattening %(pool)s/%(img)s"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:492
+#, python-format
+msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:529
+msgid "volume has no backup snaps"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:552
+#, python-format
+msgid "volume %s is not a clone"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:570
+#, python-format
+msgid "deleting parent snapshot %s"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:581
+#, python-format
+msgid "deleting parent %s"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:597
+#, python-format
+msgid "volume %s no longer exists in backend"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:613
+msgid "volume has clone snapshot(s)"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:629
+#, python-format
+msgid "deleting rbd volume %s"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:633
+msgid ""
+"ImageBusy error raised while deleting rbd volume. This may have been "
+"caused by a connection from a client that has crashed and, if so, may be "
+"resolved by retrying the delete after 30 seconds has elapsed."
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:646
+msgid "volume is a clone so cleaning references"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:703
+#, python-format
+msgid "connection data: %s"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:712
+msgid "Not stored in rbd"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:716
+msgid "Blank components"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:719
+msgid "Not an rbd snapshot"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:731
+#, python-format
+msgid "not cloneable: %s"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:735
+#, python-format
+msgid "%s is in a different ceph cluster"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:740
+msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:754
+#, python-format
+msgid "Unable to open image %(loc)s: %(err)s"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:824
+msgid "volume backup complete."
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:837
+msgid "volume restore complete."
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
+#, python-format
+msgid "Failed to Extend Volume %(volname)s"
+msgstr ""
+
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/windows/windows.py:223
+#, python-format
+msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
+msgstr ""
+
+#: cinder/volume/drivers/scality.py:67
+msgid "Value required for 'scality_sofs_config'"
+msgstr ""
+
+#: cinder/volume/drivers/scality.py:78
+#, python-format
+msgid "Cannot access 'scality_sofs_config': %s"
+msgstr ""
+
+#: cinder/volume/drivers/scality.py:84
+msgid "Cannot execute /sbin/mount.sofs"
+msgstr ""
+
+#: cinder/volume/drivers/scality.py:105
+msgid "Cannot mount Scality SOFS, check syslog for errors"
+msgstr ""
+
+#: cinder/volume/drivers/scality.py:139
+#, python-format
+msgid "Cannot find volume dir for Scality SOFS at '%s'"
+msgstr ""
+
+#: cinder/volume/drivers/sheepdog.py:59
+#, python-format
+msgid "Sheepdog is not working: %s"
+msgstr ""
+
+#: cinder/volume/drivers/sheepdog.py:64
+msgid "Sheepdog is not working"
+msgstr ""
+
+#: cinder/volume/drivers/solidfire.py:142
+#, python-format
+msgid "Payload for SolidFire API call: %s"
+msgstr ""
+
+#: 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:152
+#, python-format
+msgid "Failed to make httplib connection: %s"
+msgstr ""
+
+#: 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:164
+#, python-format
+msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
+msgstr ""
+
+#: cinder/volume/drivers/solidfire.py:175
+#, python-format
+msgid "Call to json.loads() raised an exception: %s"
+msgstr ""
+
+#: cinder/volume/drivers/solidfire.py:181
+#, python-format
+msgid "Results of SolidFire API call: %s"
+msgstr ""
+
+#: cinder/volume/drivers/solidfire.py:185
+#, python-format
+msgid "Clone operation encountered: %s"
+msgstr ""
+
+#: cinder/volume/drivers/solidfire.py:187
+#, python-format
+msgid "Waiting for outstanding operation before retrying snapshot: %s"
+msgstr ""
+
+#: cinder/volume/drivers/solidfire.py:193
+#, python-format
+msgid "Detected xDBVersionMismatch, retry %s of 5"
+msgstr ""
+
+#: 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:220
+#, python-format
+msgid "Found solidfire account: %s"
+msgstr ""
+
+#: cinder/volume/drivers/solidfire.py:251
+#, python-format
+msgid "solidfire account: %s does not exist, create it..."
+msgstr ""
+
+#: 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:396
+msgid "Failed to get model update from clone"
+msgstr ""
+
+#: cinder/volume/drivers/solidfire.py:408
+#, python-format
+msgid "Failed volume create: %s"
+msgstr ""
+
+#: cinder/volume/drivers/solidfire.py:423
+#, python-format
+msgid "More than one valid preset was detected, using %s"
+msgstr ""
+
+#: cinder/volume/drivers/solidfire.py:458
+#, python-format
+msgid "Failed to get SolidFire Volume: %s"
+msgstr ""
+
+#: 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:476
+#, python-format
+msgid "Volume %s, not found on SF Cluster."
+msgstr ""
+
+#: cinder/volume/drivers/solidfire.py:479
+#, python-format
+msgid "Found %(count)s volumes mapped to id: %(uuid)s."
+msgstr ""
+
+#: cinder/volume/drivers/solidfire.py:548
+msgid "Enter SolidFire delete_volume..."
+msgstr ""
+
+#: 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:554
+msgid "This usually means the volume was never successfully created."
+msgstr ""
+
+#: cinder/volume/drivers/solidfire.py:567
+#, python-format
+msgid "Failed to delete SolidFire Volume: %s"
+msgstr ""
+
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
+#, python-format
+msgid "Volume ID %s was not found on the SolidFire Cluster!"
+msgstr ""
+
+#: cinder/volume/drivers/solidfire.py:573
+msgid "Leaving SolidFire delete_volume"
+msgstr ""
+
+#: cinder/volume/drivers/solidfire.py:577
+msgid "Executing SolidFire ensure_export..."
+msgstr ""
+
+#: cinder/volume/drivers/solidfire.py:585
+msgid "Executing SolidFire create_export..."
+msgstr ""
+
+#: cinder/volume/drivers/solidfire.py:636
+msgid "Entering SolidFire extend_volume..."
+msgstr ""
+
+#: cinder/volume/drivers/solidfire.py:658
+msgid "Leaving SolidFire extend_volume"
+msgstr ""
+
+#: cinder/volume/drivers/solidfire.py:663
+msgid "Updating cluster status info"
+msgstr ""
+
+#: cinder/volume/drivers/solidfire.py:671
+msgid "Failed to get updated stats"
+msgstr ""
+
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
+msgid "Entering SolidFire attach_volume..."
+msgstr ""
+
+#: cinder/volume/drivers/solidfire.py:772
+msgid "Leaving SolidFire transfer volume"
+msgstr ""
+
+#: cinder/volume/drivers/zadara.py:236
+#, python-format
+msgid "Sending %(method)s to %(url)s. Body \"%(body)s\""
+msgstr ""
+
+#: cinder/volume/drivers/zadara.py:260
+#, python-format
+msgid "Operation completed. %(data)s"
+msgstr ""
+
+#: cinder/volume/drivers/zadara.py:357
+#, python-format
+msgid "Pool %(name)s: %(total)sGB total, %(free)sGB free"
+msgstr ""
+
+#: cinder/volume/drivers/zadara.py:408 cinder/volume/drivers/zadara.py:531
+#, python-format
+msgid "Volume %(name)s could not be found. It might be already deleted"
+msgstr ""
+
+#: cinder/volume/drivers/zadara.py:438
+#, python-format
+msgid "Create snapshot: %s"
+msgstr ""
+
+#: cinder/volume/drivers/zadara.py:445 cinder/volume/drivers/zadara.py:490
+#: cinder/volume/drivers/zadara.py:516
+#, python-format
+msgid "Volume %(name)s not found"
+msgstr ""
+
+#: cinder/volume/drivers/zadara.py:456
+#, python-format
+msgid "Delete snapshot: %s"
+msgstr ""
+
+#: cinder/volume/drivers/zadara.py:464
+#, python-format
+msgid "snapshot: original volume %s not found, skipping delete operation"
+msgstr ""
+
+#: cinder/volume/drivers/zadara.py:472
+#, python-format
+msgid "snapshot: snapshot %s not found, skipping delete operation"
+msgstr ""
+
+#: cinder/volume/drivers/zadara.py:483
+#, python-format
+msgid "Creating volume from snapshot: %s"
+msgstr ""
+
+#: cinder/volume/drivers/zadara.py:496
+#, python-format
+msgid "Snapshot %(name)s not found"
+msgstr ""
+
+#: cinder/volume/drivers/zadara.py:614
+#, python-format
+msgid "Attach properties: %(properties)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_cli_iscsi.py:125
+#, python-format
+msgid "iSCSI provider_location not stored for volume %s, using discovery."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
+#, python-format
+msgid "Could not find iSCSI export  for volume %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
+#, python-format
+msgid "Cannot find device number for volume %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
+#, python-format
+msgid "Found iSCSI endpoint: %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_cli_iscsi.py:209
+#, python-format
+msgid "ISCSI endpoint not found for SP %(sp)s "
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_cli_iscsi.py:241
+#, python-format
+msgid "update_volume_status:%s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:40
+msgid ""
+"Module PyWBEM not installed.  Install PyWBEM using the python-pywbem "
+"package."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:82
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:125
+msgid "Entering create_volume."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:86
+#, python-format
+msgid "Create Volume: %(volume)s  Size: %(size)lu"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:94
+#, python-format
+msgid "Create Volume: %(volume)s  Storage type: %(storage_type)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:101
+#, python-format
+msgid ""
+"Create Volume: %(volume)s  Pool: %(pool)s  Storage System: "
+"%(storage_system)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:110
+#, python-format
+msgid ""
+"Error Create Volume: %(volumename)s. Storage Configuration Service not "
+"found for pool %(storage_type)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:120
+#, python-format
+msgid ""
+"Create Volume: %(name)s  Method: CreateOrModifyElementFromStoragePool  "
+"ConfigServicie: %(service)s  ElementName: %(name)s  InPool: %(pool)s  "
+"ElementType: %(provisioning)s  Size: %(size)lu"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:136
+#, python-format
+msgid "Create Volume: %(volumename)s  Return code: %(rc)lu"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:143
+#, python-format
+msgid ""
+"Error Create Volume: %(volumename)s.  Return code: %(rc)lu.  Error: "
+"%(error)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:164
+#, python-format
+msgid ""
+"Leaving create_volume: %(volumename)s  Return code: %(rc)lu volume "
+"instance: %(name)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:176
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:348
+msgid "Entering create_volume_from_snapshot."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:181
+#, python-format
+msgid ""
+"Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
+"%(snapshotname)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:191
+#, python-format
+msgid ""
+"Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
+"%(snapshotname)s  Snapshot Instance: %(snapshotinstance)s  Storage "
+"System: %(storage_system)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:201
+#, python-format
+msgid ""
+"Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
+"%(snapshotname)s. Create Volume from Snapshot is NOT supported on VMAX."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:212
+#, python-format
+msgid ""
+"Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
+"%(snapshotname)s. Cannot find Replication Service to create volume from "
+"snapshot."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:221
+#, python-format
+msgid ""
+"Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
+"%(snapshotname)s  Method: CreateElementReplica  ReplicationService: "
+"%(service)s  ElementName: %(elementname)s  SyncType: 8  SourceElement: "
+"%(sourceelement)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:242
+#, python-format
+msgid ""
+"Error Create Volume from Snapshot: Volume: %(volumename)s  "
+"Snapshot:%(snapshotname)s.  Return code: %(rc)lu.Error: %(error)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:268
+#, python-format
+msgid ""
+"Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
+"%(snapshotname)s.  Successfully clone volume from snapshot.  Finding the "
+"clone relationship."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:280
+#, python-format
+msgid ""
+"Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
+"%(snapshotname)s.  Remove the clone relationship. Method: "
+"ModifyReplicaSynchronization ReplicationService: %(service)s  Operation: "
+"8  Synchronization: %(sync_name)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:296
+#, python-format
+msgid ""
+"Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
+"%(snapshotname)s  Return code: %(rc)lu"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:305
+#, python-format
+msgid ""
+"Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
+"%(snapshotname)s.  Return code: %(rc)lu.  Error: %(error)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:317
+#, python-format
+msgid ""
+"Leaving create_volume_from_snapshot: Volume: %(volumename)s Snapshot: "
+"%(snapshotname)s  Return code: %(rc)lu."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:328
+msgid "Entering create_cloned_volume."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:333
+#, python-format
+msgid ""
+"Create a Clone from Volume: Volume: %(volumename)s  Source Volume: "
+"%(srcname)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:343
+#, python-format
+msgid ""
+"Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
+"  Source Instance: %(src_instance)s  Storage System: %(storage_system)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:353
+#, python-format
+msgid ""
+"Error Create Cloned Volume: Volume: %(volumename)s  Source Volume: "
+"%(srcname)s. Cannot find Replication Service to create cloned volume."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:362
+#, python-format
+msgid ""
+"Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
+"  Method: CreateElementReplica  ReplicationService: %(service)s  "
+"ElementName: %(elementname)s  SyncType: 8  SourceElement: "
+"%(sourceelement)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:383
+#, python-format
+msgid ""
+"Error Create Cloned Volume: Volume: %(volumename)s  Source "
+"Volume:%(srcname)s.  Return code: %(rc)lu.Error: %(error)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:409
+#, python-format
+msgid ""
+"Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s."
+"  Successfully cloned volume from source volume.  Finding the clone "
+"relationship."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:421
+#, python-format
+msgid ""
+"Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s."
+"  Remove the clone relationship. Method: ModifyReplicaSynchronization "
+"ReplicationService: %(service)s  Operation: 8  Synchronization: "
+"%(sync_name)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:437
+#, python-format
+msgid ""
+"Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
+"  Return code: %(rc)lu"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:446
+#, python-format
+msgid ""
+"Error Create Cloned Volume: Volume: %(volumename)s  Source Volume: "
+"%(srcname)s.  Return code: %(rc)lu.  Error: %(error)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:458
+#, python-format
+msgid ""
+"Leaving create_cloned_volume: Volume: %(volumename)s Source Volume: "
+"%(srcname)s  Return code: %(rc)lu."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:469
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:178
+msgid "Entering delete_volume."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:471
+#, python-format
+msgid "Delete Volume: %(volume)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:478
+#, python-format
+msgid "Volume %(name)s not found on the array. No volume to delete."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:488
+#, python-format
+msgid ""
+"Error Delete Volume: %(volumename)s. Storage Configuration Service not "
+"found."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:496
+#, python-format
+msgid "Delete Volume: %(name)s  DeviceID: %(deviceid)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:500
+#, python-format
+msgid ""
+"Delete Volume: %(name)s  Method: EMCReturnToStoragePool ConfigServic: "
+"%(service)s  TheElement: %(vol_instance)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:514
+#, python-format
+msgid ""
+"Error Delete Volume: %(volumename)s.  Return code: %(rc)lu.  Error: "
+"%(error)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:523
+#, python-format
+msgid "Leaving delete_volume: %(volumename)s  Return code: %(rc)lu"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:530
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:275
+msgid "Entering create_snapshot."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:534
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:278
+#, python-format
+msgid "Create snapshot: %(snapshot)s: volume: %(volume)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:544
+#: cinder/volume/drivers/emc/emc_smis_common.py:972
+#, python-format
+msgid "Device ID: %(deviceid)s: Storage System: %(storagesystem)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:551
+#: cinder/volume/drivers/emc/emc_smis_common.py:553
+#: cinder/volume/drivers/emc/emc_smis_common.py:639
+#, python-format
+msgid "Cannot find Replication Service to create snapshot for volume %s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:558
+#, python-format
+msgid ""
+"Create Snapshot:  Method: CreateElementReplica: Target: %(snapshot)s  "
+"Source: %(volume)s  Replication Service: %(service)s  ElementName: "
+"%(elementname)s  Sync Type: 7  SourceElement: %(sourceelement)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:574
+#, python-format
+msgid ""
+"Create Snapshot: Volume: %(volumename)s  Snapshot: %(snapshotname)s  "
+"Return code: %(rc)lu"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:583
+#, python-format
+msgid ""
+"Error Create Snapshot: %(snapshot)s Volume: %(volume)s Error: "
+"%(errordesc)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:605
+#, python-format
+msgid ""
+"Leaving create_snapshot: Snapshot: %(snapshot)s Volume: %(volume)s  "
+"Return code: %(rc)lu."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:613
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:302
+msgid "Entering delete_snapshot."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:617
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:306
+#, python-format
+msgid "Delete Snapshot: %(snapshot)s: volume: %(volume)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:623
+#, python-format
+msgid ""
+"Delete Snapshot: %(snapshot)s: volume: %(volume)s. Finding "
+"StorageSychronization_SV_SV."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:631
+#, python-format
+msgid ""
+"Snapshot: %(snapshot)s: volume: %(volume)s not found on the array. No "
+"snapshot to delete."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:646
+#, python-format
+msgid ""
+"Delete Snapshot: Target: %(snapshot)s  Source: %(volume)s.  Method: "
+"ModifyReplicaSynchronization:  Replication Service: %(service)s  "
+"Operation: 19  Synchronization: %(sync_name)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:662
+#, python-format
+msgid ""
+"Delete Snapshot: Volume: %(volumename)s  Snapshot: %(snapshotname)s  "
+"Return code: %(rc)lu"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:671
+#, python-format
+msgid ""
+"Error Delete Snapshot: Volume: %(volumename)s  Snapshot: "
+"%(snapshotname)s. Return code: %(rc)lu. Error: %(error)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:696
+#: cinder/volume/drivers/emc/emc_smis_common.py:711
+#, python-format
+msgid "Snapshot: %(snapshot)s: volume: %(volume)s. Snapshot is deleted."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:703
+#, python-format
+msgid ""
+"Snapshot: %(snapshot)s: volume: %(volume)s. Snapshot deleted but cleanup "
+"timed out."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:716
+#, python-format
+msgid ""
+"Snapshot: %(snapshot)s: volume: %(volume)s. Snapshot deleted but error "
+"during cleanup. Error: %(error)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:724
+#, python-format
+msgid ""
+"Leaving delete_snapshot: Volume: %(volumename)s  Snapshot: "
+"%(snapshotname)s  Return code: %(rc)lu."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:745
+#, python-format
+msgid ""
+"ExposePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(lun_name)s"
+"  InitiatorPortIDs: %(initiator)s  DeviceAccesses: 2"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:760
+#, python-format
+msgid "ExposePaths parameter LunMaskingSCSIProtocolController: %(lunmasking)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:771
+#, python-format
+msgid "Error mapping volume %s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:775
+#, python-format
+msgid "ExposePaths for volume %s completed successfully."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:791
+#, python-format
+msgid ""
+"HidePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(device_id)s  "
+"LunMaskingSCSIProtocolController: %(lunmasking)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:804
+#, python-format
+msgid "Error unmapping volume %s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:808
+#, python-format
+msgid "HidePaths for volume %s completed successfully."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:821
+#, python-format
+msgid ""
+"AddMembers: ConfigServicie: %(service)s  MaskingGroup: %(masking_group)s"
+"  Members: %(vol)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:836
+#, python-format
+msgid "Error mapping volume %(vol)s. %(error)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:841
+#, python-format
+msgid "AddMembers for volume %s completed successfully."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:854
+#, python-format
+msgid ""
+"RemoveMembers: ConfigServicie: %(service)s  MaskingGroup: "
+"%(masking_group)s  Members: %(vol)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:867
+#, python-format
+msgid "Error unmapping volume %(vol)s. %(error)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:872
+#, python-format
+msgid "RemoveMembers for volume %s completed successfully."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:878
+#, python-format
+msgid "Map volume: %(volume)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:887
+#: cinder/volume/drivers/emc/emc_smis_common.py:917
+#, python-format
+msgid "Cannot find Controller Configuration Service for storage system %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:901
+#, python-format
+msgid "Unmap volume: %(volume)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:907
+#, python-format
+msgid "Volume %s is not mapped. No volume to unmap."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:931
+#, python-format
+msgid "Initialize connection: %(volume)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:937
+#, python-format
+msgid "Volume %s is already mapped."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:949
+#, python-format
+msgid "Terminate connection: %(volume)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:956
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:197
+msgid "Entering extend_volume."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:960
+#, python-format
+msgid "Extend Volume: %(volume)s  New size: %(size)lu"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:980
+#, python-format
+msgid ""
+"Error Extend Volume: %(volumename)s. Storage Configuration Service not "
+"found."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:988
+#, python-format
+msgid ""
+"Extend Volume: %(name)s  Method: CreateOrModifyElementFromStoragePool  "
+"ConfigServicie: %(service)s ElementType: %(provisioning)s  Size: "
+"%(size)luVolume path: %(volumepath)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1004
+#, python-format
+msgid "Extend Volume: %(volumename)s  Return code: %(rc)lu"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1011
+#, python-format
+msgid ""
+"Error Extend Volume: %(volumename)s.  Return code: %(rc)lu.  Error: "
+"%(error)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1018
+#, python-format
+msgid "Leaving extend_volume: %(volumename)s  Return code: %(rc)lu "
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1040
+#, python-format
+msgid "Storage Type: %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1057
+#, python-format
+msgid "Found Storage Type in config file: %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1063
+msgid "Storage type not found."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1079
+#, python-format
+msgid "Found Masking View: %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1082
+msgid "Masking View not found."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1097
+#, python-format
+msgid "Found Timeout: %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1100
+msgid "Timeout not specified."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1122
+msgid "Ecom user not found."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1142
+#, python-format
+msgid "Ecom IP: %(ecomIp)s Port: %(ecomPort)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1146
+msgid "Ecom server not found."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1153
+msgid "Cannot connect to ECOM server"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1165
+#, python-format
+msgid "Found Replication Service: %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1178
+#, python-format
+msgid "Found Storage Configuration Service: %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1191
+#, python-format
+msgid "Found Controller Configuration Service: %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1204
+#, python-format
+msgid "Found Storage Hardware ID Management Service: %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1248
+#, python-format
+msgid "Pool %(storage_type)s is not found."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1254
+#, python-format
+msgid "Storage system not found for pool %(storage_type)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1260
+#, python-format
+msgid "Pool: %(pool)s  SystemName: %(systemname)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1277
+#, python-format
+msgid "Pool name: %(poolname)s  System name: %(systemname)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1292
+#, python-format
+msgid "Volume %(volumename)s not found on the array."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1295
+#, python-format
+msgid "Volume name: %(volumename)s  Volume instance: %(vol_instance)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1310
+#, python-format
+msgid "Source: %(volumename)s  Target: %(snapshotname)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1322
+#, python-format
+msgid ""
+"Source: %(volumename)s  Target: %(snapshotname)s. Storage Synchronized "
+"not found. "
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1327
+#, python-format
+msgid ""
+"Storage system: %(storage_system)s  Storage Synchronized instance: "
+"%(sync)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1353
+#, python-format
+msgid "Error finding %s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1357
+#, python-format
+msgid "Found %(name)s: %(initiator)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1417
+#, python-format
+msgid ""
+"LunMaskingSCSIProtocolController for storage system %(storage_system)s "
+"and initiator %(initiator)s is  %(ctrl)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1458
+#, python-format
+msgid ""
+"LunMaskingSCSIProtocolController for storage volume %(vol)s and initiator"
+" %(initiator)s is  %(ctrl)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1472
+#, python-format
+msgid ""
+"Volume %(name)s not found on the array. Cannot determine if there are "
+"volumes mapped."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1484
+#, python-format
+msgid ""
+"LunMaskingSCSIProtocolController for storage system %(storage)s and "
+"%(connector)s is %(ctrl)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1496
+#, python-format
+msgid ""
+"Found %(numVolumesMapped)d volumes on storage system %(storage)s mapped "
+"to %(initiator)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1531
+#, python-format
+msgid "Available device number on %(storage)s: %(device)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1556
+#, python-format
+msgid ""
+"LunMaskingSCSIProtocolController for volume %(vol)s and connector "
+"%(connector)s is %(ctrl)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1592
+#, python-format
+msgid "Device number not found for volume %(volumename)s %(vol_instance)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1597
+#, python-format
+msgid "Found device number %(device)d for volume %(volumename)s %(vol_instance)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1607
+#, python-format
+msgid "Device info: %(data)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1629
+#, python-format
+msgid "Masking view: %(view)s DeviceMaskingGroup: %(masking)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1651
+#, python-format
+msgid "Found Storage Processor System: %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1679
+#, python-format
+msgid ""
+"iSCSIProtocolEndpoint for storage system %(storage_system)s and SP %(sp)s"
+" is  %(endpoint)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1720
+msgid "Error finding Storage Hardware ID Service."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1726
+#, python-format
+msgid ""
+"EMCGetTargetEndpoints: Service: %(service)s  Storage HardwareIDs: "
+"%(hardwareids)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1738
+msgid "Error finding Target WWNs."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1748
+#, python-format
+msgid "Add target WWN: %s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1750
+#, python-format
+msgid "Target WWNs: %s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_common.py:1766
+#, python-format
+msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
+#, python-format
+msgid "Return FC data: %(data)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
+#, python-format
+msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
+#, python-format
+msgid "ISCSI properties: %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:77
+msgid "Pool name is not specified."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:98
+msgid "Could not find NAVISECCLI tool."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:107
+#, python-format
+msgid "Failed to find pool %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:129
+#, python-format
+msgid "Create Volume: %(volume)s  Size: %(size)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:137
+#, python-format
+msgid "Create Volume: %(volumename)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:147
+#, python-format
+msgid "Create Volume: %(volumename)s  Return code: %(rc)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:151
+#, python-format
+msgid "Volume %s already exists"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:153
+#, python-format
+msgid "Failed to create %(volumename)s: %(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:167
+#, python-format
+msgid "LUN %s failed to become Ready"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:187
+#, python-format
+msgid "Delete Volume: %(volumename)s  Output: %(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:190
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:335
+#, python-format
+msgid "Failed to destroy %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:210
+#, python-format
+msgid "Extend Volume: %(volumename)s  Output: %(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:214
+msgid ""
+"The LUN cannot be expanded or shrunk because it has snapshots. Command to"
+" extend the specified volume failed."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:220
+#, python-format
+msgid "Failed to expand %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:240
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:268
+#, python-format
+msgid "Failed to list %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:251
+#, python-format
+msgid "create_export: Volume: %(volume)s  Device ID: %(device_id)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:292
+#, python-format
+msgid "Create Snapshot: %(snapshotname)s  Unity: %(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:296
+#, python-format
+msgid "Failed to create snap %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:318
+#, python-format
+msgid ""
+"Delete Snapshot: Volume: %(volumename)s  Snapshot: %(snapshotname)s  "
+"Output: %(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:328
+#, python-format
+msgid "Snapshot %s is in use"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:330
+#, python-format
+msgid "Failed to destroy %s  because snapshot is in use."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:360
+#, python-format
+msgid "Creating Destination Volume : %s "
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:372
+#, python-format
+msgid "Create temporary Volume: %(volumename)s  Output : %(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:377
+msgid "Command to create the destination volume failed"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:388
+#, python-format
+msgid ""
+"Create mount point : Volume: %(volumename)s  Source Volume: "
+"%(sourcevolumename)s  Output: %(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:395
+#, python-format
+msgid "Failed to create SMP %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:406
+#, python-format
+msgid ""
+"Attaching mount point Volume: %(volumename)s  with  Snapshot: "
+"%(snapshotname)s  Output: %(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:413
+#, python-format
+msgid "Failed to attach snapshotname %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:420
+#, python-format
+msgid "Migrating Mount Point Volume: %s "
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:431
+#, python-format
+msgid "Migrate Mount Point  Volume: %(volumename)s  Output : %(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:437
+#, python-format
+msgid "Failed to start migrating SMP %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:451
+#, python-format
+msgid "Waiting for the update on Sync status of %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:454
+#, python-format
+msgid "Failed to really migrate %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:482
+#, python-format
+msgid "Failed to create cloned volume %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:499
+#, python-format
+msgid "creating new storage group %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:504
+#, python-format
+msgid "Create new storage group : %(storage_groupname)s, Output: %(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:510
+#, python-format
+msgid "Failed to create SG %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:521
+#, python-format
+msgid ""
+"Connect storage group : %(storage_groupname)s ,To Host : %(hostname)s, "
+"Output : %(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:528
+#, python-format
+msgid "Failed to connect %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:545
+#, python-format
+msgid "NO LUNs in the storagegroup : %s "
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:561
+#, python-format
+msgid "Host Lun Id : %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:570
+#, python-format
+msgid "Owner SP : %s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:603
+#, python-format
+msgid ""
+"The storage group has reached the maximum capacity of LUNs. Command to "
+"add LUN for volume - %s in storagegroup failed"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:613
+#, python-format
+msgid ""
+"Unable to get new host lun id. Please check if the storage group can "
+"accommodate new LUN. Command to add LUN for volume - %s in storagegroup "
+"failed"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:628
+#, python-format
+msgid "Add ALU %(alu)s to SG %(sg)s as %(hlu)s. Output: %(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:637
+msgid "Requested Host LUN Number already in use"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:640
+msgid "LUN was already added in the storage group"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:644
+#, python-format
+msgid "Failed to add %s into SG"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:658
+#, python-format
+msgid "Remove %(hlu)s from SG %(sg)s. Output: %(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:663
+#, python-format
+msgid "Failed to remove %(hlu)s from %(sg)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:684
+msgid "Could not locate the attached volume."
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:703
+#, python-format
+msgid "WWNs found for SP %(devicesp)s are: %(initiator_address)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:731
+#, python-format
+msgid "Invalid value of extra spec 'storagetype:provisioning': %(provisioning)s"
+msgstr ""
+
+#: cinder/volume/drivers/emc/emc_vnx_cli.py:735
+msgid "No extra spec 'storagetype:provisioning' exist"
+msgstr ""
+
+#: cinder/volume/drivers/hds/hds.py:71
+#, python-format
+msgid "Range: start LU: %(start)s, end LU: %(end)s"
+msgstr ""
+
+#: cinder/volume/drivers/hds/hds.py:85
+#, python-format
+msgid "setting LU upper (end) limit to %s"
+msgstr ""
+
+#: cinder/volume/drivers/hds/hds.py:93
+#, python-format
+msgid "%(element)s: %(val)s"
+msgstr ""
+
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
+#, python-format
+msgid "XML exception reading parameter: %s"
+msgstr ""
+
+#: cinder/volume/drivers/hds/hds.py:179
+#, python-format
+msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
+msgstr ""
+
+#: cinder/volume/drivers/hds/hds.py:198
+#, python-format
+msgid "No configuration found for service: %s"
+msgstr ""
+
+#: cinder/volume/drivers/hds/hds.py:251
+#, python-format
+msgid "HDP not found: %s"
+msgstr ""
+
+#: cinder/volume/drivers/hds/hds.py:290
+#, python-format
+msgid "iSCSI portal not found for service: %s"
+msgstr ""
+
+#: cinder/volume/drivers/hds/hds.py:328
+#, python-format
+msgid "LUN %(lun)s of size %(sz)s MB is created."
+msgstr ""
+
+#: cinder/volume/drivers/hds/hds.py:356
+#, python-format
+msgid "LUN %(lun)s of size %(size)s MB is cloned."
+msgstr ""
+
+#: cinder/volume/drivers/hds/hds.py:373
+#, python-format
+msgid "LUN %(lun)s extended to %(size)s GB."
+msgstr ""
+
+#: cinder/volume/drivers/hds/hds.py:396
+#, python-format
+msgid "delete lun %(lun)s on %(name)s"
+msgstr ""
+
+#: cinder/volume/drivers/hds/hds.py:481
+#, python-format
+msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
+msgstr ""
+
+#: cinder/volume/drivers/hds/hds.py:504
+#, python-format
+msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
+msgstr ""
+
+#: cinder/volume/drivers/hds/hds.py:523
+#, python-format
+msgid "LUN %s is deleted."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/__init__.py:58
+msgid "_instantiate_driver: configuration not found."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/__init__.py:65
+#, python-format
+msgid ""
+"_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
+"%(product)s series storage arrays."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/__init__.py:85
+#, python-format
+msgid ""
+"\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
+"either T, Dorado or HVS. \"Protocol\" should be set to either iSCSI or "
+"FC. Product: %(product)s Protocol: %(protocol)s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/huawei_dorado.py:74
+#, python-format
+msgid ""
+"initialize_connection: volume name: %(vol)s host: %(host)s initiator: "
+"%(wwn)s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/huawei_dorado.py:92
+#: cinder/volume/drivers/huawei/huawei_t.py:461
+#, python-format
+msgid "initialize_connection: Target FC ports WWNS: %s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/huawei_t.py:101
+#, python-format
+msgid ""
+"initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
+"%(ini)s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/huawei_t.py:159
+#: cinder/volume/drivers/huawei/rest_common.py:1278
+#, python-format
+msgid ""
+"_get_iscsi_params: Failed to get target IP for initiator %(ini)s, please "
+"check config file."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/huawei_t.py:206
+#: cinder/volume/drivers/huawei/rest_common.py:1083
+#, python-format
+msgid "_get_tgt_iqn: iSCSI IP is %s."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/huawei_t.py:234
+#, python-format
+msgid "_get_tgt_iqn: iSCSI target iqn is %s."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/huawei_t.py:248
+#, python-format
+msgid ""
+"_get_iscsi_tgt_port_info: Failed to get iSCSI port info. Please make sure"
+" the iSCSI port IP %s is configured in array."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/huawei_t.py:323
+#: cinder/volume/drivers/huawei/huawei_t.py:552
+#, python-format
+msgid ""
+"terminate_connection: volume: %(vol)s, host: %(host)s, connector: "
+"%(initiator)s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/huawei_t.py:351
+#, python-format
+msgid "_remove_iscsi_port: iSCSI port was not found on host %(hostid)s."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/huawei_t.py:436
+msgid "validate_connector: The FC driver requires thewwpns in the connector."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/huawei_t.py:443
+#, python-format
+msgid ""
+"initialize_connection: volume name: %(vol)s, host: %(host)s, initiator: "
+"%(wwn)s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/huawei_t.py:578
+#, python-format
+msgid "_remove_fc_ports: FC port was not found on host %(hostid)s."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/huawei_utils.py:40
+#, python-format
+msgid "parse_xml_file: %s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
+#, python-format
+msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:59
+#, python-format
+msgid "HVS Request URL: %(url)s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:60
+#, python-format
+msgid "HVS Request Data: %(data)s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:73
+#, python-format
+msgid "HVS Response Data: %(res)s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:75
+#, python-format
+msgid "Bad response from server: %s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:82
+msgid "JSON transfer error"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:102
+#, python-format
+msgid "Login error, reason is %s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:166
+#, python-format
+msgid ""
+"%(err)s\n"
+"result: %(res)s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:173
+#, python-format
+msgid "%s \"data\" was not in result."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:208
+msgid "Can't find the Qos policy in array"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:246
+msgid "Can't find lun or lun group in array"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:280
+#, python-format
+msgid "Invalid resource pool: %s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:298
+#, python-format
+msgid "Get pool info error, pool name is:%s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:327
+#, python-format
+msgid "create_snapshot:snapshot name:%(snapshot)s, volume name:%(volume)s."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:354
+#, python-format
+msgid "_stop_snapshot:snapshot name:%(snapshot)s, volume name:%(volume)s."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:474
+#, python-format
+msgid ""
+"_mapping_hostgroup_and_lungroup: lun_group: %(lun_group)sview_id: "
+"%(view_id)s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:511
+#: cinder/volume/drivers/huawei/rest_common.py:543
+#, python-format
+msgid "initiator name:%(initiator_name)s, volume name:%(volume)s."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:527
+#, python-format
+msgid "host lun id is %s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:553
+#, python-format
+msgid "the free wwns %s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:574
+#, python-format
+msgid "the fc server properties is:%s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:688
+#, python-format
+msgid "JSON transfer data error. %s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:874
+#, python-format
+msgid "terminate_connection:volume name: %(volume)s, initiator name: %(ini)s."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:937
+#, python-format
+msgid ""
+"Config file is wrong. LUNType must be \"Thin\" or \"Thick\". "
+"LUNType:%(fetchtype)s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:964
+#, python-format
+msgid ""
+"PrefetchType config is wrong. PrefetchType must in 1,2,3,4. fetchtype "
+"is:%(fetchtype)s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:970
+msgid "Use default prefetch fetchtype. Prefetch fetchtype:Intelligent."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:982
+#, python-format
+msgid ""
+"_wait_for_luncopy:LUNcopy status is not normal.LUNcopy name: "
+"%(luncopyname)s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:1056
+#, python-format
+msgid ""
+"_get_iscsi_port_info: Failed to get iscsi port info through config IP "
+"%(ip)s, please check config file."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:1101
+#, python-format
+msgid "_get_tgt_iqn: iSCSI target iqn is %s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:1124
+#, python-format
+msgid "_parse_volume_type: type id: %(type_id)s config parameter is: %(params)s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:1157
+#, python-format
+msgid ""
+"_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
+" in extra_specs and make it consistent with the configuration file "
+"%(conf)s."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:1162
+#, python-format
+msgid "The config parameters are: %s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:1239
+#: cinder/volume/drivers/huawei/ssh_common.py:118
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
+#, python-format
+msgid "_check_conf_file: Config file invalid. %s must be set."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:1246
+#: cinder/volume/drivers/huawei/ssh_common.py:125
+msgid "_check_conf_file: Config file invalid. StoragePool must be set."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:1256
+#, python-format
+msgid ""
+"_check_conf_file: Config file invalid. Host OSType invalid.\n"
+"The valid values are: %(os_list)s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/rest_common.py:1300
+msgid "Can not find lun in array"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:54
+#, python-format
+msgid "ssh_read: Read SSH timeout. %s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:70
+msgid "No response message. Please check system status."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:101
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
+msgid "do_setup"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:135
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
+#, python-format
+msgid ""
+"_check_conf_file: Config file invalid. Host OSType is invalid.\n"
+"The valid values are: %(os_list)s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:169
+#, python-format
+msgid "_get_login_info: %s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:224
+#, python-format
+msgid "create_volume: volume name: %s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:242
+#, python-format
+msgid ""
+"_name_translate: Name in cinder: %(old)s, new name in storage system: "
+"%(new)s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:279
+#, python-format
+msgid ""
+"_parse_volume_type: Unacceptable parameter %(key)s. Please check this key"
+" in extra_specs and make it consistent with the element in configuration "
+"file %(conf)s."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:373
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
+#, python-format
+msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:395
+msgid ""
+"_parse_conf_lun_params: Use default prefetch type. Prefetch type: "
+"Intelligent"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:419
+#, python-format
+msgid ""
+"_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
+" file and make sure the StoragePool %s is created in storage array."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:434
+#, python-format
+msgid "CLI command: %s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:464
+#, python-format
+msgid ""
+"_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
+"IP %(new)s."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:499
+#, python-format
+msgid "_execute_cli: %s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:509
+#, python-format
+msgid "delete_volume: volume name: %s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:514
+#, python-format
+msgid "delete_volume: Volume %(name)s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:568
+#, python-format
+msgid ""
+"create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
+"%(volume)s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:578
+#, python-format
+msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:648
+#, python-format
+msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:686
+#, python-format
+msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:695
+#, python-format
+msgid "Source volume %(name)s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:737
+#, python-format
+msgid ""
+"extend_volume: extended volume name: %(extended_name)s new added volume "
+"name: %(added_name)s new added volume size: %(added_size)s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:745
+#, python-format
+msgid "extend_volume: volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:777
+#, python-format
+msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:783
+msgid "create_snapshot: Resource pool needs 1GB valid size at least."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:790
+#, python-format
+msgid "create_snapshot: Volume %(name)s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:853
+#, python-format
+msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:863
+#, python-format
+msgid ""
+"delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
+"LUNCopy."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:871
+#, python-format
+msgid "delete_snapshot: Snapshot %(snap)s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:914
+#, python-format
+msgid ""
+"%(func)s: %(msg)s\n"
+"CLI command: %(cmd)s\n"
+"CLI out: %(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:931
+#, python-format
+msgid "map_volume: Volume %s was not found."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
+#, python-format
+msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
+#, python-format
+msgid "remove_map: Host %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
+#, python-format
+msgid "remove_map: Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
+#, python-format
+msgid "remove_map: No map between host %(host)s and volume %(volume)s."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
+#, python-format
+msgid ""
+"_delete_map: There are IOs accessing the system. Retry to delete host map"
+" %(mapid)s 10s later."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
+#, python-format
+msgid ""
+"_delete_map: Failed to delete host map %(mapid)s.\n"
+"CLI out: %(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
+msgid "_update_volume_stats: Updating volume stats."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
+msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
+msgid ""
+"_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
+"now."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
+#, python-format
+msgid ""
+"create_volume_from_snapshot: %(device)s does not support create volume "
+"from snapshot."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
+#, python-format
+msgid "create_cloned_volume: %(device)s does not support clone volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
+#, python-format
+msgid "extend_volume: %(device)s does not support extend volume."
+msgstr ""
+
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
+#, python-format
+msgid "create_snapshot: %(device)s does not support snapshot."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:125
+#, python-format
+msgid "Failed to issue mmgetstate command, error: %s."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:136
+#, python-format
+msgid "GPFS is not active.  Detailed output: %s."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:137
+#, python-format
+msgid "GPFS is not running, state: %s."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:149
+#, python-format
+msgid "Failed to issue df command for path %(path)s, error: %(error)s."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:165 cinder/volume/drivers/ibm/gpfs.py:254
+#, python-format
+msgid "Failed to issue mmlsconfig command, error: %s."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:176
+#, python-format
+msgid "Failed to issue mmlsattr command on path %(path)s, error: %(error)s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:185
+#, python-format
+msgid "Failed to find fileset for path %(path)s, command output: %(cmdout)s."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:207
+#, python-format
+msgid "Invalid storage pool %s requested.  Retype failed."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:234
+#, python-format
+msgid "Failed to issue mmlsfs command for path %(path)s, error: %(error)s."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:271
+#, python-format
+msgid "Failed to issue mmlsattr command for path %(path)s, error: %(error)s."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:321
+#, python-format
+msgid "Could not find GPFS cluster id: %s."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:329
+#, python-format
+msgid "Could not find GPFS file system device: %s."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:337
+#, python-format
+msgid "Invalid storage pool %s specificed."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:347
+msgid "Option gpfs_mount_point_base is not set correctly."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:354
+msgid "Option gpfs_images_share_mode is not set correctly."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:360
+msgid "Option gpfs_images_dir is not set correctly."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:367
+#, python-format
+msgid ""
+"gpfs_images_share_mode is set to copy_on_write, but %(vol)s and %(img)s "
+"belong to different file systems."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:378
+#, python-format
+msgid ""
+"gpfs_images_share_mode is set to copy_on_write, but %(vol)s and %(img)s "
+"belong to different filesets."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:387
+#, python-format
+msgid ""
+"Downlevel GPFS Cluster Detected.  GPFS Clone feature not enabled in "
+"cluster daemon level %(cur)s - must be at least at level %(min)s."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:401
+#, python-format
+msgid "%s must be an absolute path."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:406
+#, python-format
+msgid "%s is not a directory."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:416
+#, python-format
+msgid ""
+"The GPFS filesystem %(fs)s is not at the required release level.  Current"
+" level is %(cur)s, must be at least %(min)s."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:797
+#, python-format
+msgid "Failed to resize volume %(volume_id)s, error: %(error)s."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:821
+#, python-format
+msgid "Begin backup of volume %s."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:841
+#, python-format
+msgid "Begin restore of backup %s."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:871
+#, python-format
+msgid ""
+"Driver-based migration of volume %(vol)s failed. Move from %(src)s to "
+"%(dst)s failed with error: %(error)s."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:943
+#, python-format
+msgid "mkfs failed on volume %(vol)s, error message was: %(err)s."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/gpfs.py:976
+#, python-format
+msgid ""
+"%s cannot be accessed. Verify that GPFS is active and file system is "
+"mounted."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/ibmnas.py:87
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
+#: cinder/volume/drivers/netapp/iscsi.py:122
+#: cinder/volume/drivers/netapp/nfs.py:669
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
+#, python-format
+msgid "%s is not set"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/ibmnas.py:93
+msgid ""
+"Password or SSH private key is required for authentication: set either "
+"nas_password or nas_private_key option"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/ibmnas.py:99
+#, python-format
+msgid "Enter _get_provider_location: volume_id %s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/ibmnas.py:106
+#, python-format
+msgid "Enter _get_export_path: volume_id %s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/ibmnas.py:112
+msgid "Enter _update_volume_stats"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/ibmnas.py:138
+#, python-format
+msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/ibmnas.py:146
+#, python-format
+msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/ibmnas.py:160
+#, python-format
+msgid ""
+"Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
+"%s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/ibmnas.py:168
+#, python-format
+msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/ibmnas.py:176
+#, python-format
+msgid "Failed in _create_ibmnas_copy. Error: %s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/ibmnas.py:183
+#: cinder/volume/drivers/netapp/nfs.py:485
+#, python-format
+msgid "Resizing file to %sG"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/ibmnas.py:187
+#, python-format
+msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/ibmnas.py:197
+#: cinder/volume/drivers/netapp/nfs.py:611
+#, python-format
+msgid "Extending volume %s."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/ibmnas.py:202
+#, python-format
+msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/ibmnas.py:210
+#, python-format
+msgid "Failed in _delete_snapfiles. Error: %s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/ibmnas.py:248
+#, python-format
+msgid "Volume %s does not have provider_location specified, skipping."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:143
+msgid "enter: do_setup"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:153
+#, python-format
+msgid "Failed getting details for pool %s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:189
+msgid "do_setup: No configured nodes."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:214
+msgid "leave: do_setup"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:218
+msgid "enter: check_for_setup_error"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:222
+msgid "Unable to determine system name"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+msgid "Unable to determine system id"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:238
+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:246
+#, 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:254
+msgid "leave: check_for_setup_error"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:264
+#, python-format
+msgid "ensure_export: Volume %s not found on storage"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:283
+msgid "The connector does not contain the required information."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:307
+#, python-format
+msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:338
+msgid "CHAP secret exists for host but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:343
+#, python-format
+msgid "initialize_connection: Failed to get attributes for volume %s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:355
+#, python-format
+msgid "Did not find expected column name in lsvdisk: %s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:357
+#, python-format
+msgid "initialize_connection: Missing volume attribute for volume %s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:374
+#, 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:383
+#, python-format
+msgid "initialize_connection: Did not find a preferred node for volume %s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:406
+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:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
+#, 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:442
+#, python-format
+msgid ""
+"leave: initialize_connection:\n"
+" volume: %(vol)s\n"
+" connector %(conn)s\n"
+" properties: %(prop)s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
+#, python-format
+msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
+msgid "terminate_connection: Failed to get host name from connector."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
+#, python-format
+msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
+msgid "create_snapshot: get source volume failed."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
+msgid "create_volume_from_snapshot: Source and destination size differ."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
+msgid "create_cloned_volume: Source and destination size differ."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
+#, python-format
+msgid "enter: extend_volume: volume %s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
+msgid "extend_volume: Extending a volume with snapshots is not supported."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
+#, python-format
+msgid "leave: extend_volume: volume %s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
+#, python-format
+msgid ""
+"_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
+"operations."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
+#, python-format
+msgid ""
+"_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
+"operation: orig=%(orig)s new=%(new)s."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
+#, python-format
+msgid ""
+"_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
+"copy operations."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
+#, python-format
+msgid ""
+"_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
+"vdisk copy operation: orig=%(orig)s new=%(new)s."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
+msgid "enter: update volume copy status"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
+#, python-format
+msgid ""
+"_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
+"copy operation: orig=%(orig)s new=%(new)s."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
+msgid "exit: update volume copy status"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
+#, python-format
+msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
+#, python-format
+msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
+#, 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:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
+#, 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:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
+msgid "No vdisk with the specified vdisk_UID."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
+msgid "Reference must contain vdisk_UID element."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
+msgid "The specified vdisk is mapped to a host."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
+msgid "Could not get pool data from the storage"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
+msgid "_update_volume_stats: Could not get storage pool data"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:44
+#, python-format
+msgid "Could not find key in output of command %(cmd)s: %(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:64
+#, python-format
+msgid "Failed to get code level (%s)."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:86
+#, python-format
+msgid "Expected integer for node_count, svcinfo lsiogrp returned: %(node)s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:143
+#, python-format
+msgid "WWPN on node %(node)s: %(wwpn)s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:165
+#, python-format
+msgid "Failed to find host %s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:179
+#, python-format
+msgid "enter: get_host_from_connector: %s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:212
+#, python-format
+msgid "leave: get_host_from_connector: host %s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:223
+#, python-format
+msgid "enter: create_host: host %s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:229
+msgid "create_host: Host name is not unicode or string"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:240
+msgid "create_host: No initiators or wwpns supplied."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:270
+#, python-format
+msgid "leave: create_host: host %(host)s - %(host_name)s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:280
+#, 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:306
+#, 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:316
+#, 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:323
+#, 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:329
+#, 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:341
+#, python-format
+msgid ""
+"unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host)s "
+"found."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:353
+#, 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:382
+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:388
+msgid ""
+"Illegal value specified for storwize_svc_vol_warning: set to a percentage"
+" (0-100)"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:395
+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:402
+msgid "System does not support compression"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:407
+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:413
+#, 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:422
+#, 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:458
+msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:501
+#, python-format
+msgid "enter: create_vdisk: vdisk %s "
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:504
+#, python-format
+msgid "leave: _create_vdisk: volume %s "
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:531
+#, python-format
+msgid ""
+"Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
+"%(attr)s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:541
+#, 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:550
+#, 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:558
+#, python-format
+msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:578
+#, python-format
+msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:601
+#, python-format
+msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:637
+#, python-format
+msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#, python-format
+msgid "enter: delete_vdisk: vdisk %s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:647
+#, python-format
+msgid "Tried to delete non-existant vdisk %s."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:651
+#, python-format
+msgid "leave: delete_vdisk: vdisk %s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
+#, python-format
+msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:660
+#, python-format
+msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:675
+#, python-format
+msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
+msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
+#, python-format
+msgid ""
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
+msgid ""
+"Expected single vdisk returned from lsvdisk when filtering on vdisk_UID."
+"  %{count}s were returned."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:213
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:250
+#, python-format
+msgid ""
+"CLI Exception output:\n"
+" command: %(cmd)s\n"
+" stdout: %(out)s\n"
+" stderr: %(err)s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:53
+#, python-format
+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:262
+#, python-format
+msgid ""
+"Failed to parse CLI output:\n"
+" command: %(cmd)s\n"
+" stdout: %(out)s\n"
+" stderr: %(err)s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:144
+msgid "Must pass wwpn or host to lsfabric."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:160
+#, python-format
+msgid "Did not find success message nor error for %(fun)s: %(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:165
+msgid ""
+"storwize_svc_multihostmap_enabled is set to False, not allowing multi "
+"host mapping."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
+#, python-format
+msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
+#, python-format
+msgid ""
+"Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
+"%(row)s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/api.py:424
+#, python-format
+msgid "No element by given name %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/api.py:444
+msgid "Not a valid value for NaElement."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/api.py:448
+msgid "NaElement name cannot be null."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/api.py:491
+msgid "Type cannot be converted into NaElement."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/common.py:80
+msgid "Required configuration not found"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/common.py:108
+#, python-format
+msgid "Requested unified config: %(storage_family)s and %(storage_protocol)s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/common.py:114
+#, python-format
+msgid "Storage family %s is not supported"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/common.py:121
+#, python-format
+msgid "No default storage protocol found for storage family %(storage_family)s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/common.py:128
+#, python-format
+msgid ""
+"Protocol %(storage_protocol)s is not supported for storage family "
+"%(storage_family)s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/common.py:135
+#, python-format
+msgid ""
+"NetApp driver of family %(storage_family)s and protocol "
+"%(storage_protocol)s loaded"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/common.py:144
+msgid "Only loading netapp drivers supported."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/common.py:163
+#, python-format
+msgid ""
+"The configured NetApp driver is deprecated. Please refer the link to "
+"resolve the issue '%s'."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:69
+#, python-format
+msgid "No metadata property %(prop)s defined for the LUN %(name)s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:105
+#, python-format
+msgid "Using NetApp filer: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:150
+msgid "Success getting LUN list from server"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:166
+#, python-format
+msgid "Created LUN with name %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:175
+#, python-format
+msgid "No entry in LUN table for volume/snapshot %(name)s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:191
+#, python-format
+msgid "Destroyed LUN %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:227
+#, python-format
+msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:232
+#, python-format
+msgid ""
+"Successfully fetched target details for LUN %(name)s and initiator "
+"%(initiator_name)s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:238
+#, python-format
+msgid "Failed to get LUN target details for the LUN %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:249
+#, python-format
+msgid "Failed to get target portal for the LUN %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:252
+#, python-format
+msgid "Failed to get target IQN for the LUN %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:290
+#, python-format
+msgid "Snapshot %s deletion successful"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:310
+#: cinder/volume/drivers/netapp/iscsi.py:557
+#: cinder/volume/drivers/netapp/nfs.py:101
+#: cinder/volume/drivers/netapp/nfs.py:208
+#, python-format
+msgid "Resizing %s failed. Cleaning volume."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:325
+#, python-format
+msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:414
+#, python-format
+msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:433
+#, python-format
+msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:503
+msgid "Object is not a NetApp LUN."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:535
+#, python-format
+msgid "Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:537
+#, python-format
+msgid "Error getting lun attribute. Exception: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:593
+#, python-format
+msgid "No need to extend volume %s as it is already the requested new size."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:599
+#, python-format
+msgid "Resizing lun %s directly to new size."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:626
+#, python-format
+msgid "Lun %(path)s geometry failed. Message - %(msg)s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:655
+#, python-format
+msgid "Moving lun %(name)s to %(new_name)s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:670
+#, python-format
+msgid "Resizing lun %s using sub clone to new size."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:677
+#, python-format
+msgid "%s cannot be sub clone resized as it is hosted on compressed volume"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:683
+#, python-format
+msgid "%s cannot be sub clone resized as it contains no blocks."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:700
+#, python-format
+msgid "Post clone resize lun %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:711
+#, python-format
+msgid "Failure staging lun %s to tmp."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:716
+#, python-format
+msgid "Failure moving new cloned lun to %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:720
+#, python-format
+msgid "Failure deleting staged tmp lun %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:723
+#, python-format
+msgid "Unknown exception in post clone resize lun %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:725
+#, python-format
+msgid "Exception details: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:729
+msgid "Getting lun block count."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:734
+#, python-format
+msgid "Failure getting lun info for %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:781
+#, python-format
+msgid "Failed to get vol with required size and extra specs for volume: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:793
+#, python-format
+msgid "Error provisioning vol %(name)s on %(volume)s. Details: %(ex)s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:841
+#, python-format
+msgid "No iscsi service found for vserver %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1008
+#, python-format
+msgid "Cloned LUN with new name %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1012
+#, python-format
+msgid "No cloned lun named %s found on the filer"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1113
+msgid "Cluster ssc is not updated. No volume stats found."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1175
+#: cinder/volume/drivers/netapp/nfs.py:1300
+msgid "Unsupported ONTAP version. ONTAP version 7.3.1 and above is supported."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1179
+#: cinder/volume/drivers/netapp/nfs.py:1304
+#: cinder/volume/drivers/netapp/utils.py:323
+msgid "Api version could not be determined."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1190
+#, python-format
+msgid "Failed to get vol with required size for volume: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1299
+#, python-format
+msgid "Error finding luns for volume %s. Verify volume exists."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1443
+#, python-format
+msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1446
+#, python-format
+msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1509
+msgid "Volume refresh job already running. Returning..."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1515
+#, python-format
+msgid "Error refreshing vol capacity. Message: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/iscsi.py:1523
+#, python-format
+msgid "Refreshing capacity info for %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:106
+#: cinder/volume/drivers/netapp/nfs.py:213
+#, python-format
+msgid "NFS file %s not discovered."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:226
+#, python-format
+msgid "Copied image to volume %s using regular download."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:233
+#, python-format
+msgid "Registering image in cache %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:240
+#, python-format
+msgid ""
+"Exception while registering image %(image_id)s in cache. Exception: "
+"%(exc)s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:253
+#, python-format
+msgid "Found cache file for image %(image_id)s on share %(share)s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:266
+#, python-format
+msgid "Cloning from cache to destination %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:274
+msgid "Image cache cleaning in progress. Returning... "
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:285
+msgid "Image cache cleaning in progress."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:296
+#, python-format
+msgid "Cleaning cache for share %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:301
+#, python-format
+msgid "Files to be queued for deletion %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:308
+#, python-format
+msgid "Exception during cache cleaning %(share)s. Message - %(ex)s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:314
+msgid "Image cache cleaning done."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:339
+#, python-format
+msgid "Bytes to free %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:346
+#, python-format
+msgid "Delete file path %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:361
+#, python-format
+msgid "Deleting file at path %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:366
+#, python-format
+msgid "Exception during deleting %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:398
+#, python-format
+msgid "Image cloning unsuccessful for image %(image_id)s. Message: %(msg)s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:414
+#, python-format
+msgid "Cloning image %s from cache"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:418
+#, python-format
+msgid "Cache share: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:428
+#, python-format
+msgid "Unexpected exception during image cloning in share %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:434
+#, python-format
+msgid "Checking image clone %s from glance share."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:439
+#, python-format
+msgid "Share is cloneable %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:446
+#, python-format
+msgid "Image is raw %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:453
+#, python-format
+msgid "Image will locally be converted to raw %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:460
+#, python-format
+msgid "Converted to raw, but format is now %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:470
+#, python-format
+msgid "Performing post clone for %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:477
+msgid "NFS file could not be discovered."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:481
+msgid "Checking file for resize"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:491
+msgid "Resizing image file failed."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:513
+msgid "Discover file retries exhausted."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:539
+#, python-format
+msgid "Image location not in the expected format %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:567
+#, python-format
+msgid "Found possible share matches %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:571
+msgid "Unexpected exception while short listing used share."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:586
+msgid "Image location not present."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:623
+msgid "Container size smaller than required file size."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:631
+#, python-format
+msgid "Destination %s already exists."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:639
+#, python-format
+msgid "Exception moving file %(src)s. Message - %(e)s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:741
+#, python-format
+msgid "Shares on vserver %s will only be used for provisioning."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:745
+#: cinder/volume/drivers/netapp/nfs.py:947
+msgid "No vserver set in config. SSC will be disabled."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:794
+#, python-format
+msgid "Exception creating vol %(name)s on share %(share)s. Details: %(ex)s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:803
+#, python-format
+msgid "Volume %s could not be created on shares."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:866
+#, python-format
+msgid "No interface found on cluster for ip %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:907
+#, python-format
+msgid ""
+"No volume on cluster with vserver\n"
+"                                   %(vserver)s and junction path "
+"%(junction)s\n"
+"                                   "
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:914
+#, python-format
+msgid ""
+"Cloning with params volume %(volume)s, src %(src_path)s,\n"
+"                    dest %(dest_path)s, vserver %(vserver)s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:979
+msgid "No cluster ssc stats found. Wait for next volume stats update."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:996
+msgid "No shares found hence skipping ssc refresh."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:1033
+#: cinder/volume/drivers/netapp/nfs.py:1441
+#, python-format
+msgid "Shortlisted del elg files %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:1038
+#: cinder/volume/drivers/netapp/nfs.py:1446
+#, python-format
+msgid "Getting file usage for %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:1043
+#: cinder/volume/drivers/netapp/nfs.py:1451
+#, python-format
+msgid "file-usage for path %(path)s is %(bytes)s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:1060
+#: cinder/volume/drivers/netapp/nfs.py:1488
+#, python-format
+msgid "Share match found for ip %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:1062
+#: cinder/volume/drivers/netapp/nfs.py:1490
+#, python-format
+msgid "No share match found for ip %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:1093
+#, python-format
+msgid "Found volume %(vol)s for share %(share)s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:1126
+#, python-format
+msgid "Copied image %(img)s to volume %(vol)s using copy offload workflow."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:1130
+msgid "Copy offload either not configured or unsupported."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:1133
+#, python-format
+msgid "Copy offload workflow unsuccessful. %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:1157
+#, python-format
+msgid "No vserver owning the ip %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:1162
+msgid "Trying copy from cache using copy offload."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:1167
+#, python-format
+msgid "Found cache file_name on share %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:1181
+#, python-format
+msgid "Copied image from cache to volume %s using copy offload."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:1187
+#, python-format
+msgid "Copied image from cache to volume %s using cloning."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:1193
+#, python-format
+msgid "Error in workflow copy from cache. %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:1206
+msgid "Trying copy from image service using copy offload."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:1213
+msgid "Source host details not found."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:1239
+#, python-format
+msgid "Copied image %(img)s to tmp file %(tmp)s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:1244
+#, python-format
+msgid "Image is raw %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:1248
+#, python-format
+msgid "Copied raw image %(img)s to volume %(vol)s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:1251
+#, python-format
+msgid "Image will be converted to raw %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:1263
+#, python-format
+msgid "Converted to raw, but format is now %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:1271
+#, python-format
+msgid "Copied locally converted raw image %(img)s to volume %(vol)s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:1349
+#, python-format
+msgid "No storage path found for export path %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/nfs.py:1359
+#, python-format
+msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/ssc_utils.py:241
+#, python-format
+msgid "Unexpected error while creating ssc vol list. Message - %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/ssc_utils.py:272
+#, python-format
+msgid "Exception querying aggr options. %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/ssc_utils.py:313
+#, python-format
+msgid "Exception querying sis information. %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/ssc_utils.py:347
+#, python-format
+msgid "Exception querying mirror information. %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/ssc_utils.py:379
+#, python-format
+msgid "Exception querying storage disk. %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/ssc_utils.py:421
+#, python-format
+msgid "Running stale ssc refresh job for %(server)s and vserver %(vs)s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/ssc_utils.py:455
+#, python-format
+msgid "Successfully completed stale refresh job for %(server)s and vserver %(vs)s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/ssc_utils.py:482
+#, python-format
+msgid "Running cluster latest ssc job for %(server)s and vserver %(vs)s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/ssc_utils.py:488
+#, python-format
+msgid "Successfully completed ssc job for %(server)s and vserver %(vs)s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/ssc_utils.py:500
+msgid "Backend not a VolumeDriver."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/ssc_utils.py:502
+msgid "Backend server not NaServer."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/ssc_utils.py:505
+msgid "ssc job in progress. Returning... "
+msgstr ""
+
+#: cinder/volume/drivers/netapp/ssc_utils.py:517
+msgid "refresh stale ssc job in progress. Returning... "
+msgstr ""
+
+#: cinder/volume/drivers/netapp/ssc_utils.py:613
+msgid "Fatal error: User not permitted to query NetApp volumes."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/ssc_utils.py:620
+#, python-format
+msgid ""
+"The user does not have access or sufficient privileges to use all netapp "
+"apis. The following extra_specs will fail or be ignored: %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/utils.py:125
+msgid "ems executed successfully."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/utils.py:127
+#, python-format
+msgid "Failed to invoke ems. Message : %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/utils.py:140
+msgid ""
+"It is not the recommended way to use drivers by NetApp. Please use "
+"NetAppDriver to achieve the functionality."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/utils.py:163
+msgid "Requires an NaServer instance."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/utils.py:320
+msgid "Unsupported Clustered Data ONTAP version."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/client.py:45
+msgid "One of the required inputs from host, port or scheme not found."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/client.py:49
+msgid "Invalid transport type."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/client.py:73
+#, python-format
+msgid "Unexpected error while invoking web service. Error - %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/client.py:76
+msgid "Invoking web service failed."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/client.py:109
+msgid "Storage system id not set."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/client.py:121
+#, python-format
+msgid ""
+"Invoking rest with method: %(m)s, path: %(p)s, data: %(d)s, use_system: "
+"%(sys)s, timeout: %(t)s, verify: %(v)s, kwargs: %(k)s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/client.py:135
+msgid "Content type not supported."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/client.py:145
+#, python-format
+msgid "Response error - %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/client.py:147
+#, python-format
+msgid "Response error code - %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:86
+#, python-format
+msgid "%s is not set."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:100
+#, python-format
+msgid "Error resolving host %(host)s. Error - %(e)s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:110
+msgid "Controller ips not valid after resolution."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:113
+msgid "Embedded mode detected."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:116
+msgid "Proxy mode detected."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:127
+#, python-format
+msgid "System with controller addresses [%s] is not registered with web service."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:145
+msgid "Waiting for web service array communication."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:149
+#, python-format
+msgid ""
+"Failure in communication between web service and array. Waited %s "
+"seconds. Verify array configuration parameters."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:159
+#, python-format
+msgid "System %(id)s found with bad status - %(status)s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:161
+#, python-format
+msgid "System %(id)s has %(status)s status."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:177
+#, python-format
+msgid "Configured storage pools %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:222
+#, python-format
+msgid "Volume %s not cached."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:231
+#, python-format
+msgid "Snapshot %s not cached."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:241
+#, python-format
+msgid "Mapping with id %s already removed."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:270
+#, python-format
+msgid "No pit image found in snapshot group %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:296
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:330
+#, python-format
+msgid "Created volume with label %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:299
+#, python-format
+msgid "Error creating volume. Msg - %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:300
+#, python-format
+msgid "Failure creating volume %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:316
+#, python-format
+msgid "No storage pool found with available capacity %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:339
+#, python-format
+msgid "Failure deleting snap vol. Error: %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:341
+msgid "Snapshot volume not found."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:346
+#, python-format
+msgid "Creating snap vol for group %s"
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:357
+#, python-format
+msgid "Copying src vol %(src)s to dest vol %(dst)s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:370
+#, python-format
+msgid "Vol copy job status %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:371
+#, python-format
+msgid "Vol copy job for dest %s failed."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:374
+#, python-format
+msgid "Vol copy job completed for dest %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:382
+#, python-format
+msgid "Failure deleting job %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:384
+#, python-format
+msgid "Volume copy job for src vol %s not found."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:386
+#, python-format
+msgid "Copy job to dest vol %s completed."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:398
+#, python-format
+msgid "Failure deleting temp snapshot %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:407
+#, python-format
+msgid "Volume %s already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:431
+#, python-format
+msgid "Created snap grp with label %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:442
+#, python-format
+msgid "Snapshot %s already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:468
+#, python-format
+msgid "Mapped volume %(id)s to the initiator %(initiator_name)s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:471
+#, python-format
+msgid ""
+"Successfully fetched target details for volume %(id)s and initiator "
+"%(initiator_name)s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:511
+#, python-format
+msgid "No good iscsi portal information found for %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:527
+#, python-format
+msgid "Message - %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:542
+#, python-format
+msgid "Host with port %(port)s and type %(type)s not found."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:547
+#, python-format
+msgid "Creating host with port %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:560
+#, python-format
+msgid "Host type %s not supported."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:569
+msgid "No free luns. Host might exceeded max luns."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:592
+#, python-format
+msgid "Mapping not found for %(vol)s to host %(ht)s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:604
+msgid "Updating volume stats."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:646
+#, python-format
+msgid "Extended volume with label %s."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:660
+msgid "Returning as clean tmp vol job already running."
+msgstr ""
+
+#: cinder/volume/drivers/netapp/eseries/iscsi.py:668
+#, python-format
+msgid "Error deleting vol with label %s."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:105
+#, python-format
+msgid "Volume %s does not exist in Nexenta SA"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:151
+#, python-format
+msgid "Extending volume: %(id)s New size: %(size)s GB"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:167
+#, python-format
+msgid "Volume %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:180
+#, python-format
+msgid "Cannot delete snapshot %(origin)s: %(exc)s"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:191
+#, python-format
+msgid "Creating temp snapshot of the original volume: %(volume_name)s@%(name)s"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:201
+#: cinder/volume/drivers/nexenta/nfs.py:200
+#, python-format
+msgid "Volume creation failed, deleting created snapshot %(volume_name)s@%(name)s"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:206
+#: cinder/volume/drivers/nexenta/nfs.py:205
+#, python-format
+msgid "Failed to delete zfs snapshot %(volume_name)s@%(name)s"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:232
+#, python-format
+msgid "Enter: migrate_volume: id=%(id)s, host=%(host)s"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:268
+#, python-format
+msgid "Remote NexentaStor appliance at %s should be SSH-bound."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:288
+#, python-format
+msgid ""
+"Cannot send source snapshot %(src)s to destination %(dst)s. Reason: "
+"%(exc)s"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:296
+#, python-format
+msgid ""
+"Cannot delete temporary source snapshot %(src)s on NexentaStor Appliance:"
+" %(exc)s"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:302
+#, python-format
+msgid "Cannot delete source volume %(volume)s on NexentaStor Appliance: %(exc)s"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:312
+#, python-format
+msgid ""
+"Cannot delete temporary destination snapshot %(dst)s on NexentaStor "
+"Appliance: %(exc)s"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:355
+#, python-format
+msgid "Snapshot %s does not exist, it seems it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:476
+#: cinder/volume/drivers/windows/windows_utils.py:237
+#, python-format
+msgid "Ignored target creation error \"%s\" while ensuring export"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:486
+#, python-format
+msgid "Ignored target group creation error \"%s\" while ensuring export"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:498
+#, python-format
+msgid "Ignored target group member addition error \"%s\" while ensuring export"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:508
+#, python-format
+msgid "Ignored LU creation error \"%s\" while ensuring export"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:518
+#, python-format
+msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:551
+#, python-format
+msgid ""
+"Got error trying to destroy target group %(target_group)s, assuming it is"
+" already gone: %(exc)s"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/iscsi.py:559
+#, python-format
+msgid ""
+"Got error trying to delete target %(target)s, assuming it is already "
+"gone: %(exc)s"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/jsonrpc.py:83
+#, python-format
+msgid "Sending JSON data: %s"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/jsonrpc.py:88
+msgid "No headers in server response"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/jsonrpc.py:89
+msgid "Bad response from server"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/jsonrpc.py:90
+#, python-format
+msgid "Auto switching to HTTPS connection to %s"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/jsonrpc.py:96
+#, python-format
+msgid "Got response: %s"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:85
+#, python-format
+msgid "Volume %s does not exist in Nexenta Store appliance"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:89
+#, python-format
+msgid "Folder %s does not exist in Nexenta Store appliance"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:114
+#, python-format
+msgid "Creating folder on Nexenta Store %s"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:146
+#, python-format
+msgid "Cannot destroy created folder: %(vol)s/%(folder)s"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:176
+#, python-format
+msgid "Cannot destroy cloned folder: %(vol)s/%(folder)s"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:227
+#, python-format
+msgid "Folder %s does not exist, it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:237
+#: cinder/volume/drivers/nexenta/nfs.py:268
+#, python-format
+msgid "Snapshot %s does not exist, it was already deleted."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:302
+#, python-format
+msgid "Creating regular file: %s.This may take some time."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:313
+#, python-format
+msgid "Regular file: %s created."
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:365
+#, python-format
+msgid "Sharing folder %s on Nexenta Store"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/nfs.py:393
+#, python-format
+msgid "Shares loaded: %s"
+msgstr ""
+
+#: cinder/volume/drivers/nexenta/utils.py:47
+#, python-format
+msgid "Invalid value: \"%s\""
+msgstr ""
+
+#: cinder/volume/drivers/san/san.py:168
+msgid "Specify san_password or san_private_key"
+msgstr ""
+
+#: cinder/volume/drivers/san/san.py:172
+msgid "san_ip must be set"
+msgstr ""
+
+#: cinder/volume/drivers/san/solaris.py:78
+#, python-format
+msgid "Cannot parse list-view output: %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/solaris.py:173
+#, python-format
+msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
+#, python-format
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
+#, python-format
+msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
+#, python-format
+msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
+#, python-format
+msgid "CPG (%s) doesn't exist on array"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
+#, 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:262
+#, python-format
+msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
+msgid "Converting to base volume prior to growing."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
+#, python-format
+msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
+#, python-format
+msgid "3PAR vlun %(name)s not found on host %(host)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
+#, python-format
+msgid "Error creating QOS rule %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
+#, python-format
+msgid "VV Set %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
+#, 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:724
+#, 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:792
+#, python-format
+msgid "Volume (%s) already exists on array"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
+#, python-format
+msgid "Creating clone of a volume %(src)s to %(dest)s."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
+#, python-format
+msgid "Found an online copy for %(volume)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
+#, python-format
+msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
+#, python-format
+msgid "Converting to base volume type: %s."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
+#, python-format
+msgid "Growing volume: %(id)s by %(size)s GiB."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
+#, python-format
+msgid "Error extending volume %(id)s. Ex: %(ex)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
+#, python-format
+msgid "Failure in update_volume_key_value_pair:%s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
+#, python-format
+msgid "Failure in clear_volume_key_value_pair:%s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#, python-format
+msgid "Error attaching volume %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
+#, python-format
+msgid "Error detaching volume %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#, python-format
+msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
+#, python-format
+msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
+#, python-format
+msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
+#, python-format
+msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
+#, python-format
+msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
+#, python-format
+msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
+#, python-format
+msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
+#, python-format
+msgid ""
+"Copy volume task failed: convert_to_base_volume: id=%(id)s, "
+"status=%(status)s."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
+#, python-format
+msgid "Copy volume completed: convert_to_base_volume: id=%s."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
+#, python-format
+msgid "Volume rename completed: convert_to_base_volume: id=%s."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
+#, python-format
+msgid "Delete src volume completed: convert_to_base_volume: id=%s."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
+#, python-format
+msgid "Completed: convert_to_base_volume: id=%s."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#, python-format
+msgid "Volume (%s) already exists on array."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
+#, python-format
+msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
+#, python-format
+msgid "Invalid IP address format '%s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#, 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:170
+msgid "At least one valid iSCSI IP address must be set."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
+msgid "Least busy iSCSI port not found, using first iSCSI port in list."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
+#, 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:122
+#, 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:152
+#, 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:205
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:75
+#, 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:102
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:128
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:136
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:342
+#, 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:362
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:365
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:423
+#, python-format
+msgid "LH specs=%(specs)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:464
+#, python-format
+msgid "enter: migrate_volume: id=%(id)s, host=%(host)s, cluster=%(cluster)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:479
+#, python-format
+msgid "Clister info: %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:483
+#, python-format
+msgid ""
+"Cannot provide backend assisted migration for volume: %s because volume "
+"is from a different backend."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:488
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:494
+#, python-format
+msgid ""
+"Cannot provide backend assisted migration for volume: %s because cluster "
+"exists in different management group."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:501
+#, python-format
+msgid "Volume info: %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:505
+#, python-format
+msgid ""
+"Cannot provide backend assisted migration for volume: %s because the "
+"volume has been exported."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:514
+#, python-format
+msgid "Snapshot info: %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:516
+#, python-format
+msgid ""
+"Cannot provide backend assisted migration for volume: %s because the "
+"volume has snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:524
+#, python-format
+msgid ""
+"Cannot provide backend assisted migration for volume: %s because volume "
+"does not exist in this management group."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_msa_common.py:62
+msgid "Connecting to MSA"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_msa_common.py:66
+#, python-format
+msgid "Failed to connect to MSA Array (%(host)s): %(err)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_msa_common.py:71
+msgid "Failed to log on MSA Array (invalid login?)"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_msa_common.py:82
+msgid "Disconnected from MSA Array"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_msa_common.py:125
+#, python-format
+msgid "%s configuration option is not set"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_msa_common.py:131
+#, python-format
+msgid "Create Volume (%(display_name)s: %(name)s %(id)s)"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_msa_common.py:166
+msgid "Volume must be detached to perform a clone operation."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_msa_common.py:175
+#, python-format
+msgid "Cloning Volume %(source_id)s (%(dest_id)s)"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_msa_common.py:194
+#, python-format
+msgid "Creating Volume from snapshot %(source_id)s (%(dest_id)s)"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_msa_common.py:210
+#, python-format
+msgid "Deleting Volume (%s)"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_msa_common.py:243
+#, python-format
+msgid "Unable to get stats for VDisk (%s)"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_msa_common.py:252
+msgid "Connector doesn't provide wwpns"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_msa_common.py:279
+#, python-format
+msgid "Creating Snapshot from %(volume_id)s (%(snap_id)s)"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_msa_common.py:292
+#, python-format
+msgid "Deleting Snapshot (%s)"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_msa_common.py:307
+#, python-format
+msgid ""
+"Extending Volume %(volume_name)s from %(old_size)s to %(new_size)s, by "
+"%(growth_size)s GB."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:71
+#, python-format
+msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:169
+#, python-format
+msgid "Error while terminating session: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:182
+msgid "Successfully established connection to the server."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:189
+#, python-format
+msgid "Error while logging out from vim session: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:195
+#, python-format
+msgid "Error while logging out from pbm session: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:236
+#, python-format
+msgid "Returning empty response for %(module)s.%(method)s invocation."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:243
+#, python-format
+msgid ""
+"Current session: %(session)s is inactive; re-creating the session while "
+"invoking method %(module)s.%(method)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:259
+#, python-format
+msgid "Checking if the current session: %s is active."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:269
+#, python-format
+msgid "Error occurred while checking whether the current session: %s is active."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:304
+#, python-format
+msgid "Task: %(task)s progress: %(prog)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:308
+#, python-format
+msgid "Task %s status: success."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:311
+#: cinder/volume/drivers/vmware/api.py:315
+#, python-format
+msgid "Task: %(task)s failed with error: %(err)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:331
+msgid "Lease is ready."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:333
+msgid "Lease initializing..."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:343
+#, python-format
+msgid "Error: unknown lease state %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/error_util.py:58
+msgid "VMware VMDK driver exception."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/error_util.py:64
+msgid "VMware VMDK driver configuration error."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/io_util.py:51
+#, python-format
+msgid "Read %(bytes)s out of %(max)s from ThreadSafePipe."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/io_util.py:56
+#, python-format
+msgid "Completed transfer of size %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/io_util.py:102
+#, python-format
+msgid "Initiating image service update on image: %(image)s with meta: %(meta)s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/io_util.py:117
+#, python-format
+msgid "Glance image: %s is now active."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/io_util.py:123
+#, python-format
+msgid "Glance image: %s is in killed state."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/io_util.py:132
+#, python-format
+msgid "Glance image %(id)s is in unknown state - %(state)s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/read_write_util.py:172
+#, python-format
+msgid ""
+"Exception during HTTP connection close in VMwareHTTPWrite. Exception is "
+"%s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/read_write_util.py:204
+#: cinder/volume/drivers/vmware/read_write_util.py:293
+msgid "Could not retrieve URL from lease."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/read_write_util.py:207
+#, python-format
+msgid "Opening vmdk url: %s for write."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/read_write_util.py:232
+#, python-format
+msgid "Written %s bytes to vmdk."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/read_write_util.py:243
+#: cinder/volume/drivers/vmware/read_write_util.py:319
+#, python-format
+msgid "Updating progress to %s percent."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/read_write_util.py:259
+#: cinder/volume/drivers/vmware/read_write_util.py:335
+msgid "Lease released."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/read_write_util.py:261
+#: cinder/volume/drivers/vmware/read_write_util.py:337
+#, python-format
+msgid "Lease is already in state: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/read_write_util.py:296
+#, python-format
+msgid "Opening vmdk url: %s for read."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/read_write_util.py:308
+#, python-format
+msgid "Read %s bytes from vmdk."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vim.py:142
+#, python-format
+msgid "Error(s): %s occurred in the call to RetrievePropertiesEx."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vim.py:181
+#, python-format
+msgid "No such SOAP method %(attr)s. Detailed error: %(excep)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vim.py:190
+#, python-format
+msgid "httplib error in %(attr)s: %(excep)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vim.py:201
+#, python-format
+msgid "Socket error in %(attr)s: %(excep)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vim.py:210
+#, python-format
+msgid "Type error in %(attr)s: %(excep)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vim.py:217
+#, python-format
+msgid "Error in %(attr)s. Detailed error: %(excep)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:124
+#, python-format
+msgid "Returning default spec value: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:131
+#, python-format
+msgid "Returning spec value %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:134
+#, python-format
+msgid "Invalid spec value: %s specified."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:146
+msgid ""
+"The VMware ESX VMDK driver is now deprecated and will be removed in the "
+"Juno release. The VMware vCenter VMDK driver will remain and continue to "
+"be supported."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:198
+#, python-format
+msgid "%s not set."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:206
+#: cinder/volume/drivers/vmware/vmdk.py:1194
+#, python-format
+msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:248
+#, python-format
+msgid "Not able to find a suitable datastore for the volume: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:252
+#, python-format
+msgid "Verified volume %s can be created."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:271
+msgid "Backing not available, no operation to be performed."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:339
+#, python-format
+msgid ""
+"Unable to pick datastore to accommodate %(size)s bytes from the "
+"datastores: %(dss)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:345
+#, python-format
+msgid ""
+"Selected datastore: %(datastore)s with %(host_count)d connected host(s) "
+"for the volume."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:370
+#, python-format
+msgid "Filter datastores matching storage profile %(profile)s: %(dss)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:375
+#, python-format
+msgid "No such storage profile '%s; is defined in vCenter."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:397
+#, python-format
+msgid "Storage profile required for this volume: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:402
+#, python-format
+msgid "Aborting since none of the datastores match the given storage profile %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:407
+#, python-format
+msgid ""
+"Ignoring storage profile %s requirement for this volume since policy "
+"based placement is disabled."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:483
+#, python-format
+msgid ""
+"Unable to find suitable datastore for volume of size: %(vol)s GB under "
+"host: %(host)s. More details: %(excep)s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:493
+#, python-format
+msgid "Unable to find host to accommodate a disk of size: %s in the inventory."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:520
+#, python-format
+msgid ""
+"Unable to find suitable datastore for volume: %(vol)s under host: "
+"%(host)s. More details: %(excep)s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:530
+#, python-format
+msgid "Unable to create volume: %s in the inventory."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:549
+#, python-format
+msgid "The instance: %s for which initialize connection is called, exists."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:556
+#, python-format
+msgid "There is no backing for the volume: %s. Need to create one."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:564
+msgid "The instance for which initialize connection is called, does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:569
+#, python-format
+msgid "Trying to boot from an empty volume: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:578
+#, python-format
+msgid ""
+"Returning connection_info: %(info)s for volume: %(volume)s with "
+"connector: %(connector)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:626
+#, python-format
+msgid "Snapshot of volume not supported in state: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:631
+#, python-format
+msgid "There is no backing, so will not create snapshot: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:636
+#, python-format
+msgid "Successfully created snapshot: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:657
+#, python-format
+msgid "Delete snapshot of volume not supported in state: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:662
+#, python-format
+msgid "There is no backing, and so there is no snapshot: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:666
+#, python-format
+msgid "Successfully deleted snapshot: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:707
+#, python-format
+msgid "Successfully cloned new backing: %(back)s from source VMDK file: %(vmdk)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:724
+#, python-format
+msgid ""
+"There is no backing for the source volume: %(svol)s. Not creating any "
+"backing for the volume: %(vol)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:755
+#, python-format
+msgid ""
+"There is no backing for the source snapshot: %(snap)s. Not creating any "
+"backing for the volume: %(vol)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:764
+#: cinder/volume/drivers/vmware/vmdk.py:1310
+#, python-format
+msgid ""
+"There is no snapshot point for the snapshotted volume: %(snap)s. Not "
+"creating any backing for the volume: %(vol)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:801
+#, python-format
+msgid "Cannot create image of disk format: %s. Only vmdk disk format is accepted."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:836
+#: cinder/volume/drivers/vmware/vmdk.py:895
+#, python-format
+msgid "Fetching glance image: %(id)s to server: %(host)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:845
+#: cinder/volume/drivers/vmware/vmdk.py:917
+#, python-format
+msgid "Done copying image: %(id)s to volume: %(vol)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:848
+#, python-format
+msgid ""
+"Exception in copy_image_to_volume: %(excep)s. Deleting the backing: "
+"%(back)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:868
+#, python-format
+msgid "Exception in _select_ds_for_volume: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:873
+#, python-format
+msgid "Selected datastore %(ds)s for new volume of size %(size)s GB."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:909
+#, python-format
+msgid "Exception in copy_image_to_volume: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:913
+#, python-format
+msgid "Deleting the backing: %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:928
+#, python-format
+msgid ""
+"The backing is not found, so there is no need to extend the vmdk virtual "
+"disk for the volume %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:950
+#, python-format
+msgid "Unable to extend the size of the vmdk virtual disk at the path %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:967
+#, python-format
+msgid "Copy glance image: %s to create new volume."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:992
+#, python-format
+msgid "Exception in copying the image to the volume: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:1021
+msgid "Upload to glance of attached volume is not supported."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:1026
+#, python-format
+msgid "Copy Volume: %s to new image."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:1032
+#, python-format
+msgid "Backing not found, creating for volume: %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:1051
+#, python-format
+msgid "Done copying volume %(vol)s to a new image %(img)s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:1068
+#: cinder/volume/drivers/vmware/vmdk.py:1097
+#, python-format
+msgid "Done extending volume %(vol)s to size %(size)s GB."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:1072
+#, python-format
+msgid ""
+"Relocating volume %s vmdk to a different datastore since trying to extend"
+" vmdk file in place failed."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:1080
+#, python-format
+msgid "Not able to find a different datastore to place the extended volume %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:1083
+#, python-format
+msgid "Selected datastore %(ds)s to place extended volume of size %(size)s GB."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:1095
+#, python-format
+msgid "Not able to relocate volume %s for extending."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:1144
+#, python-format
+msgid "PBM WSDL file %s is missing!"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:1147
+#, python-format
+msgid "Using PBM WSDL location: %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:1158
+#, python-format
+msgid "Using overridden vmware_host_version from config: %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:1162
+#, python-format
+msgid "Fetched VC server version: %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:1169
+#, python-format
+msgid "Version string '%s' is not parseable"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:1183
+#, python-format
+msgid "Not able to configure PBM for VC server: %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:1242
+#, python-format
+msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:1288
+#: cinder/volume/drivers/vmware/volumeops.py:673
+#, python-format
+msgid "Successfully created clone: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:1302
+#, python-format
+msgid ""
+"There is no backing for the snapshotted volume: %(snap)s. Not creating "
+"any backing for the volume: %(vol)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:1339
+#, python-format
+msgid ""
+"There is no backing for the source volume: %(src)s. Not creating any "
+"backing for volume: %(vol)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmdk.py:1347
+#, python-format
+msgid "Linked clone of source volume not supported in state: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmware_images.py:94
+#, python-format
+msgid "Downloading image: %s from glance image server as a flat vmdk file."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmware_images.py:107
+#: cinder/volume/drivers/vmware/vmware_images.py:126
+#, python-format
+msgid "Downloaded image: %s from glance image server."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmware_images.py:113
+#, python-format
+msgid "Downloading image: %s from glance image server using HttpNfc import."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmware_images.py:132
+#, python-format
+msgid "Uploading image: %s to the Glance image server using HttpNfc export."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/vmware_images.py:158
+#, python-format
+msgid "Uploaded image: %s to the Glance image server."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:88
+#, python-format
+msgid "Did not find any backing with name: %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:95
+#, python-format
+msgid "Deleting the VM backing: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:98
+#, python-format
+msgid "Initiated deletion of VM backing: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:100
+#, python-format
+msgid "Deleted the VM backing: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:226
+#, python-format
+msgid "Datastores attached to host %(host)s are: %(ds)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:240
+#, python-format
+msgid "There are no valid datastores attached to %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:244
+#, python-format
+msgid "Valid datastores are: %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:294
+#, python-format
+msgid ""
+"Creating folder: %(child_folder_name)s under parent folder: "
+"%(parent_folder)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:311
+#, python-format
+msgid "Child folder already present: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:319
+#, python-format
+msgid "Created child folder: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:332
+#, python-format
+msgid "Extending the volume %(name)s to %(size)s GB."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:347
+#, python-format
+msgid "Successfully extended the volume %(name)s to %(size)s GB."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:406
+#, python-format
+msgid "Spec for creating the backing: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:425
+#, python-format
+msgid ""
+"Creating volume backing name: %(name)s disk_type: %(disk_type)s size_kb: "
+"%(size_kb)s at folder: %(folder)s resourse pool: %(resource_pool)s "
+"datastore name: %(ds_name)s profileId: %(profile)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:438
+#, python-format
+msgid "Initiated creation of volume backing: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:441
+#, python-format
+msgid "Successfully created volume backing: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:481
+#, python-format
+msgid "Spec for relocating the backing: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:495
+#, python-format
+msgid ""
+"Relocating backing: %(backing)s to datastore: %(ds)s and resource pool: "
+"%(rp)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:505
+#, python-format
+msgid "Initiated relocation of volume backing: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:507
+#, python-format
+msgid ""
+"Successfully relocated volume backing: %(backing)s to datastore: %(ds)s "
+"and resource pool: %(rp)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:517
+#, python-format
+msgid "Moving backing: %(backing)s to folder: %(fol)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:522
+#, python-format
+msgid "Initiated move of volume backing: %(backing)s into the folder: %(fol)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:525
+#, python-format
+msgid "Successfully moved volume backing: %(backing)s into the folder: %(fol)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:537
+#, python-format
+msgid "Snapshoting backing: %(backing)s with name: %(name)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:544
+#, python-format
+msgid "Initiated snapshot of volume backing: %(backing)s named: %(name)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:548
+#, python-format
+msgid "Successfully created snapshot: %(snap)s for volume backing: %(backing)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:596
+#, python-format
+msgid "Deleting the snapshot: %(name)s from backing: %(backing)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:601
+#, python-format
+msgid ""
+"Did not find the snapshot: %(name)s for backing: %(backing)s. Need not "
+"delete anything."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:608
+#, python-format
+msgid "Initiated snapshot: %(name)s deletion for backing: %(backing)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:612
+#, python-format
+msgid "Successfully deleted snapshot: %(name)s of backing: %(backing)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:640
+#, python-format
+msgid "Spec for cloning the backing: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:656
+#, python-format
+msgid ""
+"Creating a clone of backing: %(back)s, named: %(name)s, clone type: "
+"%(type)s from snapshot: %(snap)s on datastore: %(ds)s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:670
+#, python-format
+msgid "Initiated clone of backing: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:681
+#, python-format
+msgid "Deleting file: %(file)s under datacenter: %(dc)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:689
+#, python-format
+msgid "Initiated deletion via task: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:691
+#, python-format
+msgid "Successfully deleted file: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:744
+msgid "Copying disk data before snapshot of the VM"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:754
+#, python-format
+msgid "Initiated copying disk data via task: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:756
+#, python-format
+msgid "Successfully copied disk at: %(src)s to: %(dest)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:765
+#, python-format
+msgid "Deleting vmdk file: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:772
+#, python-format
+msgid "Initiated deleting vmdk file via task: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:774
+#, python-format
+msgid "Deleted vmdk file: %s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:781
+msgid "Get all profiles defined in current VC."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:789
+#, python-format
+msgid "Got profile IDs: %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:800
+#, python-format
+msgid "Trying to retrieve profile id for %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:804
+#, python-format
+msgid "Got profile id %(id)s for profile %(name)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:815
+#, python-format
+msgid "Filtering hubs %(hubs)s that match profile %(profile)s."
+msgstr ""
+
+#: cinder/volume/drivers/vmware/volumeops.py:823
+#, python-format
+msgid "Filtered hubs: %s"
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows.py:102
+#, python-format
+msgid "Creating folder %s "
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:47
+#, python-format
+msgid ""
+"check_for_setup_error: the state of the WT Portal could not be verified. "
+"WMI exception: %s"
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:53
+msgid "check_for_setup_error: there is no ISCSI traffic listening."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:63
+#, python-format
+msgid ""
+"get_host_information: the state of the WT Portal could not be verified. "
+"WMI exception: %s"
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:73
+#, python-format
+msgid ""
+"get_host_information: the ISCSI target information could not be "
+"retrieved. WMI exception: %s"
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:107
+#, python-format
+msgid ""
+"associate_initiator_with_iscsi_target: an association between initiator: "
+"%(init)s and target name: %(target)s could not be established. WMI "
+"exception: %(wmi_exc)s"
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:125
+#, python-format
+msgid ""
+"delete_iscsi_target: error when deleting the iscsi target associated with"
+" target name: %(target)s . WMI exception: %(wmi_exc)s"
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:141
+#, python-format
+msgid ""
+"create_volume: error when creating the volume name: %(vol_name)s . WMI "
+"exception: %(wmi_exc)s"
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
+#, python-format
+msgid ""
+"delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
+"exception: %(wmi_exc)s"
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:184
+#, python-format
+msgid ""
+"create_snapshot: error when creating the snapshot name: %(vol_name)s . "
+"WMI exception: %(wmi_exc)s"
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:200
+#, python-format
+msgid ""
+"create_volume_from_snapshot: error when creating the volume name: "
+"%(vol_name)s from snapshot name: %(snap_name)s. WMI exception: "
+"%(wmi_exc)s"
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:215
+#, python-format
+msgid ""
+"delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
+"WMI exception: %(wmi_exc)s"
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:230
+#, python-format
+msgid ""
+"create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
+" exception: %(wmi_exc)s"
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
+#, python-format
+msgid ""
+"remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
+" exception: %(wmi_exc)s"
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:267
+#, python-format
+msgid ""
+"add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
+" to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:285
+#, python-format
+msgid ""
+"copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
+" destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:302
+#, python-format
+msgid ""
+"extend: error when extending the volume: %(vol_name)s .WMI exception: "
+"%(wmi_exc)s"
+msgstr ""
+
+#: cinder/volume/flows/common.py:53
+#, python-format
+msgid "Restoring source %(source_volid)s status to %(status)s"
+msgstr ""
+
+#: cinder/volume/flows/common.py:59
+#, python-format
+msgid ""
+"Failed setting source volume %(source_volid)s back to its initial "
+"%(source_status)s status"
+msgstr ""
+
+#: cinder/volume/flows/common.py:84
+#, python-format
+msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
+msgstr ""
+
+#: cinder/volume/flows/common.py:91
+#: cinder/volume/flows/manager/create_volume.py:648
+#, python-format
+msgid "Failed updating volume %(volume_id)s with %(update)s"
+msgstr ""
+
+#: cinder/volume/flows/api/create_volume.py:81
+#, python-format
+msgid "Originating snapshot status must be one of %s values"
+msgstr ""
+
+#: cinder/volume/flows/api/create_volume.py:103
+#, python-format
+msgid ""
+"Unable to create a volume from an originating source volume when its "
+"status is not one of %s values"
+msgstr ""
+
+#: cinder/volume/flows/api/create_volume.py:126
+#, python-format
+msgid ""
+"Volume size %(size)sGB cannot be smaller than the snapshot size "
+"%(snap_size)sGB. They must be >= original snapshot size."
+msgstr ""
+
+#: cinder/volume/flows/api/create_volume.py:135
+#, python-format
+msgid ""
+"Volume size %(size)sGB cannot be smaller than original volume size  "
+"%(source_size)sGB. They must be >= original volume size."
+msgstr ""
+
+#: cinder/volume/flows/api/create_volume.py:144
+#, python-format
+msgid "Volume size %(size)s must be an integer and greater than 0"
+msgstr ""
+
+#: cinder/volume/flows/api/create_volume.py:186
+#, python-format
+msgid ""
+"Size of specified image %(image_size)sGB is larger than volume size "
+"%(volume_size)sGB."
+msgstr ""
+
+#: cinder/volume/flows/api/create_volume.py:194
+#, python-format
+msgid ""
+"Volume size %(volume_size)sGB cannot be smaller than the image minDisk "
+"size %(min_disk)sGB."
+msgstr ""
+
+#: cinder/volume/flows/api/create_volume.py:212
+#, python-format
+msgid "Metadata property key %s greater than 255 characters"
+msgstr ""
+
+#: cinder/volume/flows/api/create_volume.py:217
+#, python-format
+msgid "Metadata property key %s value greater than 255 characters"
+msgstr ""
+
+#: cinder/volume/flows/api/create_volume.py:254
+#, python-format
+msgid "Availability zone '%s' is invalid"
+msgstr ""
+
+#: cinder/volume/flows/api/create_volume.py:267
+msgid "Volume must be in the same availability zone as the snapshot"
+msgstr ""
+
+#: cinder/volume/flows/api/create_volume.py:276
+msgid "Volume must be in the same availability zone as the source volume"
+msgstr ""
+
+#: cinder/volume/flows/api/create_volume.py:315
+msgid "Volume type will be changed to be the same as the source volume."
+msgstr ""
+
+#: cinder/volume/flows/api/create_volume.py:463
+#, python-format
+msgid "Failed destroying volume entry %s"
+msgstr ""
+
+#: cinder/volume/flows/api/create_volume.py:546
+#, python-format
+msgid "Failed rolling back quota for %s reservations"
+msgstr ""
+
+#: cinder/volume/flows/api/create_volume.py:590
+#, python-format
+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:193
+#, python-format
+msgid "Volume %s: create failed"
+msgstr ""
+
+#: cinder/volume/flows/api/create_volume.py:682
+msgid "Unexpected build error:"
+msgstr ""
+
+#: cinder/volume/flows/manager/create_volume.py:101
+#, python-format
+msgid ""
+"Volume %(volume_id)s: re-scheduling %(method)s attempt %(num)d due to "
+"%(reason)s"
+msgstr ""
+
+#: cinder/volume/flows/manager/create_volume.py:120
+#, python-format
+msgid "Volume %s: re-scheduled"
+msgstr ""
+
+#: cinder/volume/flows/manager/create_volume.py:137
+#, python-format
+msgid "Updating volume %(volume_id)s with %(update)s."
+msgstr ""
+
+#: cinder/volume/flows/manager/create_volume.py:142
+#, python-format
+msgid "Volume %s: resetting 'creating' status failed."
+msgstr ""
+
+#: cinder/volume/flows/manager/create_volume.py:161
+#, python-format
+msgid "Volume %s: rescheduling failed"
+msgstr ""
+
+#: cinder/volume/flows/manager/create_volume.py:308
+#, python-format
+msgid ""
+"Failed notifying about the volume action %(event)s for volume "
+"%(volume_id)s"
+msgstr ""
+
+#: cinder/volume/flows/manager/create_volume.py:344
+#, python-format
+msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
+msgstr ""
+
+#: cinder/volume/flows/manager/create_volume.py:346
+#, 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:404
+#, 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:417
+#, python-format
+msgid "Marking volume %s as bootable."
+msgstr ""
+
+#: cinder/volume/flows/manager/create_volume.py:420
+#, python-format
+msgid "Failed updating volume %(volume_id)s bootable flag to true"
+msgstr ""
+
+#: cinder/volume/flows/manager/create_volume.py:447
+#, 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:454
+#: cinder/volume/flows/manager/create_volume.py:465
+#, 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:460
+#, python-format
+msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
+msgstr ""
+
+#: cinder/volume/flows/manager/create_volume.py:474
+#, 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:511
+#, 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:525
+#, 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:551
+#, python-format
+msgid "Failed updating volume %(volume_id)s with %(updates)s"
+msgstr ""
+
+#: cinder/volume/flows/manager/create_volume.py:573
+#, python-format
+msgid "Unable to create volume. Volume driver %s not initialized"
+msgstr ""
+
+#: cinder/volume/flows/manager/create_volume.py:587
+#, 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:605
+#: cinder/volume/flows/manager/manage_existing.py:84
+#, 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:652
+#, python-format
+msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
+msgstr ""
+
+#: cinder/volume/flows/manager/manage_existing.py:45
+#, python-format
+msgid "Unable to manage existing volume. Volume driver %s not initialized."
+msgstr ""
+
+#: cinder/volume/flows/manager/manage_existing.py:48
+#, python-format
+msgid "Volume driver %s not initialized."
+msgstr ""
+
+#: cinder/zonemanager/fc_san_lookup_service.py:77
+#, python-format
+msgid "Lookup service to invoke: %s"
+msgstr ""
+
+#: cinder/zonemanager/fc_san_lookup_service.py:82
+msgid ""
+"Lookup service not configured. Config option for fc_san_lookup_service "
+"need to specify a concrete implementation of lookup service"
+msgstr ""
+
+#: cinder/zonemanager/fc_zone_manager.py:83
+#, python-format
+msgid "Zone Driver from config: {%s}"
+msgstr ""
+
+#: cinder/zonemanager/fc_zone_manager.py:117
+#, python-format
+msgid "Target List :%s"
+msgstr ""
+
+#: cinder/zonemanager/fc_zone_manager.py:121
+#, python-format
+msgid "Fabric Map after context lookup:%s"
+msgstr ""
+
+#: cinder/zonemanager/fc_zone_manager.py:130
+#, python-format
+msgid "Final filtered map for fabric: %s"
+msgstr ""
+
+#: cinder/zonemanager/fc_zone_manager.py:136
+msgid "Add Connection: Finished iterating over all target list"
+msgstr ""
+
+#: cinder/zonemanager/fc_zone_manager.py:139
+#, python-format
+msgid "Failed adding connection for fabric=%(fabric)s: Error:%(err)s"
+msgstr ""
+
+#: cinder/zonemanager/fc_zone_manager.py:160
+#, python-format
+msgid "Delete connection Target List:%s"
+msgstr ""
+
+#: cinder/zonemanager/fc_zone_manager.py:165
+#, python-format
+msgid "Delete connection Fabric Map from SAN context: %s"
+msgstr ""
+
+#: cinder/zonemanager/fc_zone_manager.py:176
+#, python-format
+msgid "Final filtered map for delete connection: %s"
+msgstr ""
+
+#: cinder/zonemanager/fc_zone_manager.py:183
+msgid "Delete Connection - Finished iterating over all target list"
+msgstr ""
+
+#: cinder/zonemanager/fc_zone_manager.py:186
+#, python-format
+msgid "Failed removing connection for fabric=%(fabric)s: Error:%(err)s"
+msgstr ""
+
+#: cinder/zonemanager/fc_zone_manager.py:199
+#, python-format
+msgid "Got SAN context:%s"
+msgstr ""
+
+#: cinder/zonemanager/fc_zone_manager.py:227
+#, python-format
+msgid "No targets to add or remove connection for I: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/fc_zone_driver.py:44
+msgid "Initializing FCZoneDriver"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_san_lookup_service.py:57
+#, python-format
+msgid "Fabric Names: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_san_lookup_service.py:94
+msgid "Missing Fibre Channel SAN configuration param - fc_fabric_names"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_san_lookup_service.py:98
+#, python-format
+msgid "FC Fabric List: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_san_lookup_service.py:124
+#, python-format
+msgid "Getting name server data for fabric %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_san_lookup_service.py:131
+#, python-format
+msgid "Failed collecting name server info from fabric %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_san_lookup_service.py:134
+#, python-format
+msgid "SSH connection failed for %(fabric)s with error: %(err)s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_san_lookup_service.py:141
+#, python-format
+msgid "Lookup service:nsinfo-%s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_san_lookup_service.py:142
+#, python-format
+msgid "Lookup service:initiator list from caller-%s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_san_lookup_service.py:144
+#, python-format
+msgid "Lookup service:target list from caller-%s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_san_lookup_service.py:152
+#, python-format
+msgid "Filtered targets is: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_san_lookup_service.py:158
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:442
+#, python-format
+msgid "No targets are in the nameserver for SAN %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_san_lookup_service.py:167
+#, python-format
+msgid "No initiators are in the nameserver for SAN %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_san_lookup_service.py:175
+#, python-format
+msgid "Device map for SAN context: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_san_lookup_service.py:190
+msgid "Failed collecting nsshow info for fabric"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_san_lookup_service.py:197
+msgid "Failed collecting nscamshow"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_san_lookup_service.py:200
+#, python-format
+msgid "Connector returning nsinfo-%s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_san_lookup_service.py:215
+#, python-format
+msgid "SSH Command failed with error '%(err)s' '%(command)s'"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_san_lookup_service.py:246
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:367
+#, python-format
+msgid "Malformed nameserver string: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:80
+#, python-format
+msgid "Failed getting active zone set from fabric %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:106
+#, python-format
+msgid ""
+"Malformed zone configuration: (switch=%(switch)s "
+"zone_config=%(zone_config)s)."
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:130
+#, python-format
+msgid "Add Zones - Zones passed: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:135
+#, python-format
+msgid "Active zone set:%s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:137
+#, python-format
+msgid "zone list:%s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:147
+#, python-format
+msgid "Deleting zone failed %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:148
+#, python-format
+msgid "Deleted Zone before insert : %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:151
+msgid "Forming command for add zone"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:155
+#, python-format
+msgid "Adding zone, cmd to run %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:157
+msgid "Created zones on the switch"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:172
+#, python-format
+msgid "New zone %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:179
+#, python-format
+msgid ""
+"Creating and activating zone set failed: (Zone set=%(cfg_name)s "
+"error=%(err)s)."
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:223
+#, python-format
+msgid "Delete zones: Config cmd to run:%s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:231
+#, python-format
+msgid "Deleting zones failed: (command=%(cmd)s error=%(err)s)."
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:249
+#, python-format
+msgid "Failed collecting nsshow info for fabric %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:257
+#, python-format
+msgid "Failed collecting nscamshow info for fabric %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:288
+#, python-format
+msgid "Error while checking transaction status: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:300
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:433
+#, python-format
+msgid "Executing command via ssh: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:304
+#, python-format
+msgid "Error while running zoning CLI: (command=%(cmd)s error=%(err)s)."
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:323
+#, python-format
+msgid "Firmware version string:%s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:329
+msgid "No CLI output for firmware version check"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:332
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:345
+#, python-format
+msgid "Error while getting data via ssh: (command=%(cmd)s error=%(err)s)."
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:445
+#, python-format
+msgid "Exit Status from ssh:%s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:463
+#, python-format
+msgid "Handling error case after SSH:%s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:479
+#, python-format
+msgid "Error executing command via ssh: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:131
+#, python-format
+msgid "Add connection for Fabric:%s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:132
+#, python-format
+msgid "BrcdFCZoneDriver - Add connection for I-T map: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:144
+#, python-format
+msgid "Zoning policy for Fabric %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:154
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:263
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:402
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:460
+#, python-format
+msgid ""
+"Unsupported firmware on switch %s. Make sure switch is running firmware "
+"v6.4 or higher"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:163
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:225
+#, python-format
+msgid "Failed to add zoning configuration %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:191
+#, python-format
+msgid "Zone exists in I-T mode. Skipping zone creation %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:209
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:337
+#, python-format
+msgid "Zoning Policy: %s, not recognized"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:214
+#, python-format
+msgid "Zone map to add: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:227
+#, python-format
+msgid "Zones added successfully: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:240
+#, python-format
+msgid "Delete connection for fabric:%s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:241
+#, python-format
+msgid "BrcdFCZoneDriver - Delete connection for I-T map: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:253
+#, python-format
+msgid "Zoning policy for fabric %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:272
+#, python-format
+msgid "Failed to delete zoning configuration %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:284
+#, python-format
+msgid "zone config from Fabric: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:299
+#, python-format
+msgid "Zone name to del: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:325
+#, python-format
+msgid "Zone delete - I mode: filtered targets:%s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:329
+#, python-format
+msgid "Filtered zone members to update: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:332
+#, python-format
+msgid "Filtered zone Map to update: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:339
+#, python-format
+msgid "Final Zone map to update: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:340
+#, python-format
+msgid "Final Zone list to delete: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:364
+msgid "Failed to update or delete zoning configuration"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:377
+#, python-format
+msgid "Fabric List: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:378
+#, python-format
+msgid "Target wwn List: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:382
+#, python-format
+msgid "Formatted Target wwn List: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:411
+#, python-format
+msgid "Failed to get SAN context %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:419
+#, python-format
+msgid "name server info from fabric:%s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:423
+#, python-format
+msgid "Error getting name server info: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:426
+#, python-format
+msgid "Failed to get name server info:%s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:434
+#, python-format
+msgid "Filtered targets for SAN is: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:444
+#, python-format
+msgid "Return SAN context output:%s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:453
+#, python-format
+msgid "Southbound connector: %s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:470
+#, python-format
+msgid "Failed to access active zoning configuration:%s"
+msgstr ""
+
+#: cinder/zonemanager/drivers/brocade/brcd_fc_zone_driver.py:473
+#, python-format
+msgid "Active zone set from fabric: %s"
+msgstr ""
+
diff --git a/cinder/locale/ar/LC_MESSAGES/cinder.po b/cinder/locale/ar/LC_MESSAGES/cinder.po
index 8a2343cbc..d9f70de7e 100644
--- a/cinder/locale/ar/LC_MESSAGES/cinder.po
+++ b/cinder/locale/ar/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Arabic translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-09-12 07:56+0000\n"
-"Last-Translator: Tom Fifield <tom@openstack.org>\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Arabic "
-"(http://www.transifex.com/projects/p/openstack/language/ar/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/ar/)\n"
 "Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : "
 "n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5\n"
 "MIME-Version: 1.0\n"
@@ -738,34 +738,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -784,17 +784,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -803,39 +803,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1328,26 +1328,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1453,7 +1465,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1699,7 +1711,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1708,40 +1720,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2023,7 +2035,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2088,7 +2100,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2099,237 +2111,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2863,7 +2934,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2885,45 +2956,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3048,11 +3123,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3066,7 +3141,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3080,49 +3155,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3173,11 +3248,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3406,22 +3481,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3432,7 +3507,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3759,12 +3834,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3835,7 +3910,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3869,7 +3944,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3901,7 +3976,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3910,12 +3985,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3923,7 +3998,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3941,7 +4016,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4201,66 +4276,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4294,20 +4369,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4322,18 +4397,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4356,7 +4431,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4376,7 +4451,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4385,13 +4460,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4399,10 +4474,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4441,285 +4523,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4774,14 +4850,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4907,7 +4983,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4987,219 +5063,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5308,174 +5384,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5642,8 +5718,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5676,12 +5752,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5752,19 +5828,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6570,18 +6646,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6865,93 +6941,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7039,7 +7115,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7208,7 +7284,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7239,12 +7315,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7277,7 +7353,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7288,111 +7364,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7400,77 +7476,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7624,90 +7700,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7809,14 +7885,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7825,100 +7908,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7926,31 +8014,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8171,15 +8266,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8229,12 +8331,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9344,7 +9446,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9467,288 +9569,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10142,7 +10248,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10302,7 +10408,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10422,62 +10528,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10789,7 +10895,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10797,35 +10903,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10833,42 +10944,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/bg_BG/LC_MESSAGES/cinder.po b/cinder/locale/bg_BG/LC_MESSAGES/cinder.po
index 9231a6647..5ff046bbf 100644
--- a/cinder/locale/bg_BG/LC_MESSAGES/cinder.po
+++ b/cinder/locale/bg_BG/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Bulgarian (Bulgaria) translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-05-08 11:44+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Bulgarian (Bulgaria) "
-"(http://www.transifex.com/projects/p/openstack/language/bg_BG/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/bg_BG/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/bn_IN/LC_MESSAGES/cinder.po b/cinder/locale/bn_IN/LC_MESSAGES/cinder.po
index 16b04374f..f0dcf2065 100644
--- a/cinder/locale/bn_IN/LC_MESSAGES/cinder.po
+++ b/cinder/locale/bn_IN/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Bengali (India) translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-10-20 01:34+0000\n"
-"Last-Translator: Tom Fifield <tom@openstack.org>\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Bengali (India) "
-"(http://www.transifex.com/projects/p/openstack/language/bn_IN/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/bn_IN/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/bs/LC_MESSAGES/cinder.po b/cinder/locale/bs/LC_MESSAGES/cinder.po
index 796923e47..26ab56a3d 100644
--- a/cinder/locale/bs/LC_MESSAGES/cinder.po
+++ b/cinder/locale/bs/LC_MESSAGES/cinder.po
@@ -1,17 +1,19 @@
-# Bosnian translation for cinder
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the cinder package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+# Bosnian translations for cinder.
+# Copyright (C) 2014 ORGANIZATION
+# This file is distributed under the same license as the cinder project.
 #
-msgid ""
-msgstr ""
-"Project-Id-Version:  cinder\n"
-"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-03-29 06:10+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"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version:  Cinder\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
+"Language-Team: Bosnian "
+"(http://www.transifex.com/projects/p/cinder/language/bs/)\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -292,7 +294,7 @@ msgstr ""
 
 #: cinder/exception.py:328
 msgid "Quota could not be found"
-msgstr ""
+msgstr "კვოტა ვერ მოიძებნა"
 
 #: cinder/exception.py:332
 #, python-format
@@ -736,34 +738,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -782,17 +784,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -801,39 +803,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1163,12 +1165,12 @@ msgstr ""
 #: cinder/api/contrib/hosts.py:165
 #, python-format
 msgid "Invalid status: '%s'"
-msgstr ""
+msgstr "არასწორი სტატუსი:  '%s'"
 
 #: cinder/api/contrib/hosts.py:168
 #, python-format
 msgid "Invalid update setting: '%s'"
-msgstr ""
+msgstr "არასწორი განახლების პარამეტრი:  '%s'"
 
 #: cinder/api/contrib/hosts.py:180
 #, python-format
@@ -1326,26 +1328,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1451,7 +1465,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1697,53 +1711,49 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
 
 #: cinder/backup/api.py:66
-#, fuzzy
 msgid "Backup status must be available or error"
-msgstr "Status volumena mora biti omogućen"
+msgstr ""
 
-#: cinder/backup/api.py:115
-#, fuzzy
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
-msgstr "Status volumena mora biti omogućen"
+msgstr ""
 
-#: cinder/backup/api.py:150
-#, fuzzy
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
-msgstr "Status volumena mora biti omogućen"
+msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
-#, fuzzy
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
-msgstr "Status volumena mora biti omogućen"
+msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2025,7 +2035,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2090,7 +2100,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2101,237 +2111,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:463
+#, python-format
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:474
+#, python-format
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:492
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Pipe1 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:506
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Pipe2 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2865,7 +2934,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2887,45 +2956,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3050,11 +3123,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3068,7 +3141,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3082,50 +3155,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
-#, fuzzy
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
-msgstr "Status volumena mora biti omogućen"
+msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3176,11 +3248,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3409,22 +3481,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3435,7 +3507,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3762,12 +3834,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3838,7 +3910,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3872,7 +3944,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3904,7 +3976,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3913,12 +3985,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3926,7 +3998,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3944,7 +4016,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4129,9 +4201,8 @@ msgid "status must be in-use to detach"
 msgstr ""
 
 #: cinder/volume/api.py:371
-#, fuzzy
 msgid "Volume status must be available to reserve"
-msgstr "Status volumena mora biti omogućen"
+msgstr ""
 
 #: cinder/volume/api.py:447
 msgid "Snapshot cannot be created while volume is migrating"
@@ -4156,9 +4227,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/api.py:536
-#, fuzzy
 msgid "Volume Snapshot status must be available or error"
-msgstr "Status volumena mora biti omogućen"
+msgstr ""
 
 #: cinder/volume/api.py:564 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
@@ -4173,9 +4243,8 @@ msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
 #: cinder/volume/api.py:703 cinder/volume/api.py:777
-#, fuzzy
 msgid "Volume status must be available/in-use."
-msgstr "Status volumena mora biti omogućen"
+msgstr ""
 
 #: cinder/volume/api.py:706
 msgid "Volume status is in-use."
@@ -4207,66 +4276,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4300,20 +4369,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4328,18 +4397,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4362,7 +4431,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4382,7 +4451,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4391,13 +4460,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4405,10 +4474,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4447,285 +4523,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4780,14 +4850,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4913,11 +4983,11 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
-#, fuzzy, python-format
+#, python-format
 msgid "Error running SSH command: %s"
-msgstr "Neočekivana greška prilikom pokretanja komande."
+msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:282
 #, python-format
@@ -4993,219 +5063,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5314,174 +5384,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5648,8 +5718,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5682,12 +5752,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5758,19 +5828,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6576,18 +6646,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6871,93 +6941,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7045,7 +7115,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7214,7 +7284,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7245,12 +7315,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7283,7 +7353,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7294,111 +7364,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7406,77 +7476,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7630,90 +7700,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7815,14 +7885,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7831,100 +7908,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7932,31 +8014,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8177,15 +8266,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8235,12 +8331,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9350,7 +9446,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9473,288 +9569,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10148,7 +10248,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10308,7 +10408,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10428,62 +10528,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10795,7 +10895,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10803,35 +10903,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10839,42 +10944,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/ca/LC_MESSAGES/cinder.po b/cinder/locale/ca/LC_MESSAGES/cinder.po
index 38abc97a6..481ddf432 100644
--- a/cinder/locale/ca/LC_MESSAGES/cinder.po
+++ b/cinder/locale/ca/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Catalan translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-05-29 08:13+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Catalan "
-"(http://www.transifex.com/projects/p/openstack/language/ca/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/ca/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -731,40 +731,40 @@ msgstr ""
 
 #: cinder/policy.py:30
 msgid "JSON file representing policy"
-msgstr ""
+msgstr "Fitxer JSON que representa la politica"
 
 #: cinder/policy.py:33
 msgid "Rule checked when requested rule is not found"
-msgstr ""
+msgstr "Marca la regla quan aquesta no s'ha trobat"
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:463
+#, python-format
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:474
+#, python-format
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:492
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Pipe1 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:506
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Pipe2 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/cinder.pot b/cinder/locale/cinder.pot
index 459afea5f..e03557675 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.328\n"
+"Project-Id-Version: cinder 2014.2.dev131.gd1ef091\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+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"
@@ -736,34 +736,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -782,17 +782,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -801,39 +801,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1326,26 +1326,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1451,7 +1463,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1697,7 +1709,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1706,40 +1718,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2021,7 +2033,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2086,7 +2098,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2097,237 +2109,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2861,7 +2932,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2883,45 +2954,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3046,11 +3121,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3064,7 +3139,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3078,49 +3153,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3171,11 +3246,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3404,22 +3479,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3430,7 +3505,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3757,12 +3832,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3833,7 +3908,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3867,7 +3942,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3899,7 +3974,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3908,12 +3983,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3921,7 +3996,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3939,7 +4014,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4199,66 +4274,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4292,20 +4367,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4320,18 +4395,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4354,7 +4429,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4374,7 +4449,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4383,13 +4458,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4397,10 +4472,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4439,285 +4521,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4772,14 +4848,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4905,7 +4981,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4985,219 +5061,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5306,174 +5382,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5640,8 +5716,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5674,12 +5750,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5750,19 +5826,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6568,18 +6644,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6863,93 +6939,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7037,7 +7113,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7206,7 +7282,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7237,12 +7313,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7275,7 +7351,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7286,111 +7362,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7398,77 +7474,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7622,90 +7698,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7807,14 +7883,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7823,100 +7906,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7924,31 +8012,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8169,15 +8264,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8227,12 +8329,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9342,7 +9444,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9465,288 +9567,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10140,7 +10246,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10300,7 +10406,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10420,62 +10526,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10787,7 +10893,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10795,35 +10901,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10831,42 +10942,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/cs/LC_MESSAGES/cinder.po b/cinder/locale/cs/LC_MESSAGES/cinder.po
index 48abb3bf6..20bdc0e51 100644
--- a/cinder/locale/cs/LC_MESSAGES/cinder.po
+++ b/cinder/locale/cs/LC_MESSAGES/cinder.po
@@ -1,18 +1,19 @@
-# Czech translation for cinder
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the cinder package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+# Czech translations for cinder.
+# Copyright (C) 2014 ORGANIZATION
+# This file is distributed under the same license as the cinder project.
 #
-msgid ""
-msgstr ""
-"Project-Id-Version:  cinder\n"
-"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-03-29 06:10+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"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
-"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n"
+# Translators:
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011
+msgid ""
+msgstr ""
+"Project-Id-Version:  Cinder\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
+"Language-Team: Czech "
+"(http://www.transifex.com/projects/p/cinder/language/cs/)\n"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -21,12 +22,12 @@ msgstr ""
 #: cinder/context.py:63
 #, python-format
 msgid "Arguments dropped when creating context: %s"
-msgstr ""
+msgstr "Zahozené argumenty při vytváření kontextu: %s"
 
 #: cinder/context.py:107
 #, python-format
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
-msgstr ""
+msgstr "read_deleted může být buď 'no', 'yes' nebo 'only', ne %r"
 
 #: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
@@ -34,7 +35,7 @@ msgstr "Vyskytla se neočekávaná výjimka."
 
 #: cinder/exception.py:88
 msgid "Exception in string format operation"
-msgstr ""
+msgstr "Výjimka při operaci s formátem řetězce"
 
 #: cinder/exception.py:107
 #, python-format
@@ -70,9 +71,9 @@ msgid "Policy doesn't allow %(action)s to be performed."
 msgstr "Pravidla nedovolují, aby bylo %(action)s provedeno."
 
 #: cinder/exception.py:137
-#, fuzzy, python-format
+#, python-format
 msgid "Not authorized for image %(image_id)s."
-msgstr "Kernel nenalezen v obrazu %(image_id)s."
+msgstr "Nemáte oprávnění k použití obrazu %(image_id)s."
 
 #: cinder/exception.py:141
 msgid "Volume driver not ready."
@@ -93,18 +94,17 @@ msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
 #: cinder/exception.py:159
-#, fuzzy, python-format
+#, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
-msgstr "Svazek %(volume_id)s není k ničemu připojen"
+msgstr ""
 
 #: cinder/exception.py:163
 msgid "Failed to load data into json format"
 msgstr "Nelze načíst data do formátu json"
 
 #: cinder/exception.py:167
-#, fuzzy
 msgid "The results are invalid."
-msgstr "Požadavek je neplatný."
+msgstr ""
 
 #: cinder/exception.py:171
 #, python-format
@@ -197,9 +197,9 @@ msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:250
-#, fuzzy, python-format
+#, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
-msgstr "Instance %(instance_id)s nemá žádná metadata s klíčem %(metadata_key)s."
+msgstr ""
 
 #: cinder/exception.py:255
 #, python-format
@@ -273,9 +273,9 @@ msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr "Filtr hostitelů plácinderče %(filter_name)s nemohl být nalezen."
 
 #: cinder/exception.py:311
-#, fuzzy, python-format
+#, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
-msgstr "Filtr hostitelů plácinderče %(filter_name)s nemohl být nalezen."
+msgstr ""
 
 #: cinder/exception.py:315
 #, python-format
@@ -309,24 +309,24 @@ msgid "Quota for project %(project_id)s could not be found."
 msgstr "Kvóta pro projekt %(project_id)s nemohla být nalezena."
 
 #: cinder/exception.py:340
-#, fuzzy, python-format
+#, python-format
 msgid "Quota class %(class_name)s could not be found."
-msgstr "Třída %(class_name)s nemohla být nalezena: %(exception)s"
+msgstr "Třída kvóty %(class_name)s nemohla být nalezena."
 
 #: cinder/exception.py:344
-#, fuzzy, python-format
+#, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
-msgstr "Kvóta pro projekt %(project_id)s nemohla být nalezena."
+msgstr ""
 
 #: cinder/exception.py:348
-#, fuzzy, python-format
+#, python-format
 msgid "Quota reservation %(uuid)s could not be found."
-msgstr "Uživatel %(user_id)s nemohl být nalezen."
+msgstr ""
 
 #: cinder/exception.py:352
-#, fuzzy, python-format
+#, python-format
 msgid "Quota exceeded for resources: %(overs)s"
-msgstr "Kvóta překročena"
+msgstr ""
 
 #: cinder/exception.py:356
 #, python-format
@@ -334,9 +334,9 @@ msgid "File %(file_path)s could not be found."
 msgstr "Soubor %(file_path)s nemohl být nalezen."
 
 #: cinder/exception.py:365
-#, fuzzy, python-format
+#, python-format
 msgid "Volume Type %(id)s already exists."
-msgstr "Typ svazku %(name)s již existuje."
+msgstr ""
 
 #: cinder/exception.py:369
 #, python-format
@@ -359,9 +359,9 @@ msgid "Could not find config at %(path)s"
 msgstr "Nelze najít nastavení v %(path)s"
 
 #: cinder/exception.py:385
-#, fuzzy, python-format
+#, python-format
 msgid "Could not find parameter %(param)s"
-msgstr "Nelze najít nastavení v %(path)s"
+msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
@@ -396,9 +396,9 @@ msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 msgstr ""
 
 #: cinder/exception.py:423
-#, fuzzy, python-format
+#, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
-msgstr "Zjištěn více než jeden svazek s názvem %(vol_name)"
+msgstr ""
 
 #: cinder/exception.py:427
 #, python-format
@@ -413,9 +413,9 @@ msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
 #: cinder/exception.py:436
-#, fuzzy, python-format
+#, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
-msgstr "Poškozené tělo zprávy: %(reason)s"
+msgstr ""
 
 #: cinder/exception.py:440
 #, python-format
@@ -455,9 +455,9 @@ msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:469
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to copy image to volume: %(reason)s"
-msgstr "Poškozené tělo zprávy: %(reason)s"
+msgstr ""
 
 #: cinder/exception.py:473
 msgid "Invalid Ceph args provided for backup rbd operation"
@@ -480,18 +480,18 @@ msgid "Backup RBD operation failed"
 msgstr ""
 
 #: cinder/exception.py:493
-#, fuzzy, python-format
+#, python-format
 msgid "Backup %(backup_id)s could not be found."
-msgstr "Skupina LDAP %(group_id)s nemohla být nalezena."
+msgstr ""
 
 #: cinder/exception.py:497
 msgid "Failed to identify volume backend."
 msgstr ""
 
 #: cinder/exception.py:501
-#, fuzzy, python-format
+#, python-format
 msgid "Invalid backup: %(reason)s"
-msgstr "Neplatná podpůrná vrstva: %s"
+msgstr ""
 
 #: cinder/exception.py:505
 #, python-format
@@ -499,9 +499,9 @@ msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:509
-#, fuzzy, python-format
+#, python-format
 msgid "Transfer %(transfer_id)s could not be found."
-msgstr "Obraz %(image_id)s nemohl být nalezen."
+msgstr ""
 
 #: cinder/exception.py:513
 #, python-format
@@ -635,9 +635,9 @@ msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:631
-#, fuzzy, python-format
+#, python-format
 msgid "Bad HTTP response status %(status)s"
-msgstr "Neplatný stav serveru: %(status)s"
+msgstr ""
 
 #: cinder/exception.py:636
 msgid "Bad response from SolidFire API"
@@ -653,9 +653,9 @@ msgid "Error in SolidFire API response: data=%(data)s"
 msgstr "Chyba v odpovědi SolidFire API: data=%(data)s"
 
 #: cinder/exception.py:648
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
-msgstr "Nelze nalézt účet %(account_name) on zařízení Solidfire"
+msgstr ""
 
 #: cinder/exception.py:654
 #, python-format
@@ -663,9 +663,8 @@ msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
 #: cinder/exception.py:659
-#, fuzzy
 msgid "Unknown NFS exception"
-msgstr "Vyskytla se neočekávaná výjimka."
+msgstr ""
 
 #: cinder/exception.py:663
 msgid "No mounted NFS shares found"
@@ -677,9 +676,8 @@ msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
 #: cinder/exception.py:672
-#, fuzzy
 msgid "Unknown Gluster exception"
-msgstr "Vyskytla se neočekávaná výjimka."
+msgstr ""
 
 #: cinder/exception.py:676
 msgid "No mounted Gluster shares found"
@@ -744,34 +742,34 @@ msgstr "Soubor JSON představující zásady"
 msgid "Rule checked when requested rule is not found"
 msgstr "Kontrolované pravidlo, když požadované není nalezeno"
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -790,17 +788,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
-#, fuzzy, python-format
+#: cinder/service.py:99
+#, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
-msgstr "Začínající uzel %(topic)s (verze %(vcs_string)s)"
+msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -809,40 +807,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr "Ukončena služba bez záznamu v databázi"
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr "Objekt databáze služby zmizel, je znovu vytvářen."
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr "Obnoveno připojení modelového serveru!"
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr "modelový server je nedostupný"
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
-#, fuzzy
 msgid "Full set of CONF:"
-msgstr "Úplná sada PŘÍZNAKŮ:"
+msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -879,7 +876,7 @@ msgstr "podpůrná vrstva: %s"
 #: cinder/utils.py:699
 #, python-format
 msgid "Could not remove tmpdir: %s"
-msgstr ""
+msgstr "Nelze odstranit dočasný adresář: %s"
 
 #: cinder/utils.py:760
 #, python-format
@@ -1159,18 +1156,17 @@ msgid "import record output: %s."
 msgstr ""
 
 #: cinder/api/contrib/extended_snapshot_attributes.py:60
-#, fuzzy
 msgid "Snapshot not found."
-msgstr "Server nenalezen."
+msgstr ""
 
 #: cinder/api/contrib/hosts.py:86 cinder/api/openstack/wsgi.py:237
 msgid "cannot understand XML"
 msgstr "XML nelze porozumět"
 
 #: cinder/api/contrib/hosts.py:136
-#, fuzzy, python-format
+#, python-format
 msgid "Host '%s' could not be found."
-msgstr "Hostitel %(host)s nemohl být nalezen."
+msgstr ""
 
 #: cinder/api/contrib/hosts.py:165
 #, python-format
@@ -1230,7 +1226,7 @@ msgstr ""
 
 #: cinder/api/contrib/quotas.py:68
 msgid "Quota limit must be -1 or greater."
-msgstr ""
+msgstr "Limit kvóty musí být -1 nebo větší."
 
 #: cinder/api/contrib/quotas.py:105
 msgid "Missing required element quota_set in request body."
@@ -1243,7 +1239,7 @@ msgstr ""
 
 #: cinder/api/contrib/scheduler_hints.py:36
 msgid "Malformed scheduler_hints attribute"
-msgstr ""
+msgstr "Poškozená vlasnost scheduler_hints"
 
 #: cinder/api/contrib/services.py:91
 msgid ""
@@ -1276,9 +1272,8 @@ msgid "progress must be an integer percentage"
 msgstr ""
 
 #: cinder/api/contrib/types_extra_specs.py:101
-#, fuzzy
 msgid "Request body empty"
-msgstr "Nsprávný formát těla požadavku"
+msgstr ""
 
 #: cinder/api/contrib/types_extra_specs.py:105
 #: cinder/api/v1/snapshot_metadata.py:75 cinder/api/v1/volume_metadata.py:75
@@ -1339,26 +1334,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1384,14 +1391,14 @@ msgid "Listing volume transfers"
 msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:147
-#, fuzzy, python-format
+#, python-format
 msgid "Creating new volume transfer %s"
-msgstr "Vytvořit snímek svazku %s"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:162
-#, fuzzy, python-format
+#, python-format
 msgid "Creating transfer of volume %s"
-msgstr "Nenalezeno žádné cílové id ve svazku %(volume_id)s."
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:183
 #, python-format
@@ -1399,9 +1406,9 @@ msgid "Accepting volume transfer %s"
 msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:196
-#, fuzzy, python-format
+#, python-format
 msgid "Accepting transfer %s"
-msgstr "Vytvořit snímek svazku %s"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:217
 #, python-format
@@ -1464,7 +1471,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1494,7 +1501,7 @@ msgstr ""
 #: cinder/api/middleware/sizelimit.py:55 cinder/api/middleware/sizelimit.py:64
 #: cinder/api/middleware/sizelimit.py:78
 msgid "Request is too large."
-msgstr ""
+msgstr "Požadavek je příliš velký."
 
 #: cinder/api/openstack/__init__.py:69
 msgid "Must specify an ExtensionManager class"
@@ -1538,9 +1545,9 @@ msgid "too many body keys"
 msgstr "příliš mnoho klíčů těla"
 
 #: cinder/api/openstack/wsgi.py:671
-#, fuzzy, python-format
+#, python-format
 msgid "Exception handling resource: %s"
-msgstr "Rozšířený zdroj: %s"
+msgstr "Při zpracování zdroje nastala výjimka: %s"
 
 #: cinder/api/openstack/wsgi.py:676
 #, python-format
@@ -1623,9 +1630,8 @@ msgstr "Tento požadavek má omezen množství."
 #: cinder/api/v1/snapshot_metadata.py:156 cinder/api/v2/snapshot_metadata.py:37
 #: cinder/api/v2/snapshot_metadata.py:117
 #: cinder/api/v2/snapshot_metadata.py:156
-#, fuzzy
 msgid "snapshot does not exist"
-msgstr "Instance neexistuje"
+msgstr ""
 
 #: cinder/api/v1/snapshot_metadata.py:139
 #: cinder/api/v1/snapshot_metadata.py:149 cinder/api/v1/volume_metadata.py:139
@@ -1638,7 +1644,7 @@ msgstr "Položka metadat nenalezena"
 #: cinder/api/v1/snapshots.py:119 cinder/api/v2/snapshots.py:120
 #, python-format
 msgid "Delete snapshot with id: %s"
-msgstr ""
+msgstr "Smazat snímek s id: %s"
 
 #: cinder/api/v1/snapshots.py:173 cinder/api/v2/snapshots.py:184
 msgid "'volume_id' must be specified"
@@ -1647,7 +1653,7 @@ msgstr ""
 #: cinder/api/v1/snapshots.py:182 cinder/api/v2/snapshots.py:193
 #, python-format
 msgid "Create snapshot from volume %s"
-msgstr ""
+msgstr "Vytvořit snímek ze svazku %s"
 
 #: cinder/api/v1/snapshots.py:186 cinder/api/v2/snapshots.py:202
 #, python-format
@@ -1657,19 +1663,18 @@ msgstr ""
 #: cinder/api/v1/volume_metadata.py:37 cinder/api/v1/volume_metadata.py:117
 #: cinder/api/v1/volume_metadata.py:156 cinder/api/v2/volume_metadata.py:36
 #: cinder/api/v2/volume_metadata.py:116 cinder/api/v2/volume_metadata.py:155
-#, fuzzy
 msgid "volume does not exist"
-msgstr "Server neexistuje"
+msgstr ""
 
 #: cinder/api/v1/volumes.py:114
 #, python-format
 msgid "vol=%s"
-msgstr ""
+msgstr "svazek=%s"
 
 #: cinder/api/v1/volumes.py:293 cinder/api/v2/volumes.py:181
 #, python-format
 msgid "Delete volume with id: %s"
-msgstr ""
+msgstr "Smazat svazek s id: %s"
 
 #: cinder/api/v1/volumes.py:347 cinder/api/v1/volumes.py:351
 #: cinder/api/v2/volumes.py:251 cinder/api/v2/volumes.py:255
@@ -1692,9 +1697,9 @@ msgid "Create volume of %s GB"
 msgstr "Vytvořit svazek o %s GB"
 
 #: cinder/api/v1/volumes.py:504
-#, fuzzy, python-format
+#, python-format
 msgid "Removing options '%(bad_options)s' from query"
-msgstr "Odstraňování voleb '%(unk_opt_str)s' z fronty"
+msgstr ""
 
 #: cinder/api/v2/snapshots.py:111 cinder/api/v2/snapshots.py:126
 #: cinder/api/v2/snapshots.py:267
@@ -1714,53 +1719,49 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
-#, fuzzy, python-format
+#: cinder/api/v2/volumes.py:433
+#, python-format
 msgid "Removing options '%s' from query"
-msgstr "Odstraňování voleb '%(unk_opt_str)s' z fronty"
+msgstr ""
 
 #: cinder/backup/api.py:66
-#, fuzzy
 msgid "Backup status must be available or error"
-msgstr "Obraz musí být dostupný"
+msgstr ""
 
-#: cinder/backup/api.py:115
-#, fuzzy
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
-msgstr "Obraz musí být dostupný"
+msgstr ""
 
-#: cinder/backup/api.py:150
-#, fuzzy
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
-msgstr "Obraz musí být dostupný"
+msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
-#, fuzzy
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
-msgstr "Obraz musí být dostupný"
+msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2042,7 +2043,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2107,7 +2108,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2118,237 +2119,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:463
+#, python-format
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:474
+#, python-format
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:486
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "cmd2='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:492
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Pipe1 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2372,9 +2432,9 @@ msgid "_generate_swift_object_name_prefix: %s"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:168
-#, fuzzy, python-format
+#, python-format
 msgid "generated object list: %s"
-msgstr "Očekáván objekt typu: %s"
+msgstr ""
 
 #: cinder/backup/drivers/swift.py:179
 #, python-format
@@ -2408,9 +2468,9 @@ msgid "_read_metadata finished (%s)"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:222
-#, fuzzy, python-format
+#, python-format
 msgid "volume size %d is invalid."
-msgstr "Požadavek je neplatný."
+msgstr ""
 
 #: cinder/backup/drivers/swift.py:236
 #, python-format
@@ -2729,19 +2789,19 @@ msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
 #: cinder/brick/exception.py:108
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
-msgstr "Nenalezeno žádné cílové id ve svazku %(volume_id)s."
+msgstr ""
 
 #: cinder/brick/exception.py:112
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
-msgstr "Nenalezeno žádné cílové id ve svazku %(volume_id)s."
+msgstr ""
 
 #: cinder/brick/exception.py:116
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
-msgstr "Nenalezeno žádné cílové id ve svazku %(volume_id)s."
+msgstr ""
 
 #: cinder/brick/exception.py:120
 #, python-format
@@ -2882,10 +2942,10 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
+#, 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."
+msgstr ""
 
 #: cinder/brick/iscsi/iscsi.py:222
 #, python-format
@@ -2904,45 +2964,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
+#, 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."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3067,11 +3131,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3085,7 +3149,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3097,52 +3161,51 @@ msgstr ""
 #: cinder/db/sqlalchemy/api.py:192
 #, python-format
 msgid "Unrecognized read_deleted value '%s'"
-msgstr ""
+msgstr "Nerozpoznaná hodnota read_deleted '%s'"
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
-#, fuzzy
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
-msgstr "Obraz musí být dostupný"
+msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3151,7 +3214,7 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migration.py:37
 msgid "version should be an integer"
-msgstr ""
+msgstr "verze by měla být celé číslo"
 
 #: cinder/db/sqlalchemy/migration.py:64
 msgid "Upgrade DB using Essex release first."
@@ -3193,11 +3256,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3300,12 +3363,12 @@ msgstr ""
 
 #: cinder/image/image_utils.py:94 cinder/image/image_utils.py:199
 msgid "'qemu-img info' parsing failed."
-msgstr ""
+msgstr "zpracování 'qemu-img info' selhalo."
 
 #: cinder/image/image_utils.py:101
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
-msgstr ""
+msgstr "fmt=%(fmt)s zálohováno: %(backing_file)s"
 
 #: cinder/image/image_utils.py:109 cinder/image/image_utils.py:192
 #, python-format
@@ -3368,9 +3431,9 @@ msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
 #: cinder/openstack/common/excutils.py:62
-#, fuzzy, python-format
+#, python-format
 msgid "Original exception being dropped: %s"
-msgstr "Původní výjimka je zahozena"
+msgstr ""
 
 #: cinder/openstack/common/excutils.py:91
 #, python-format
@@ -3380,7 +3443,7 @@ msgstr ""
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
-msgstr ""
+msgstr "Znovu načítání souboru mezipaměti %s"
 
 #: cinder/openstack/common/gettextutils.py:271
 msgid "Message objects do not support addition."
@@ -3407,44 +3470,44 @@ msgid "Could not release the acquired lock `%s`"
 msgstr ""
 
 #: cinder/openstack/common/lockutils.py:189
-#, fuzzy, python-format
+#, python-format
 msgid "Got semaphore \"%(lock)s\" for method \"%(method)s\"..."
-msgstr "Získán semafor \"%(lock)s\" pro zámek metody \"%(method)s\""
+msgstr ""
 
 #: cinder/openstack/common/lockutils.py:200
-#, fuzzy, python-format
+#, python-format
 msgid "Attempting to grab file lock \"%(lock)s\" for method \"%(method)s\"..."
-msgstr "Pokus o získání zámku souboru \"%(lock)s\" pro zámek metody \"%(method)s\""
+msgstr ""
 
 #: cinder/openstack/common/lockutils.py:227
-#, fuzzy, python-format
+#, python-format
 msgid "Got file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
-msgstr "Získán zámek souboru \"%(lock)s\" pro zámek metody \"%(method)s\""
+msgstr ""
 
 #: cinder/openstack/common/lockutils.py:235
-#, fuzzy, python-format
+#, python-format
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
-msgstr "Získán zámek souboru \"%(lock)s\" pro zámek metody \"%(method)s\""
+msgstr ""
 
-#: cinder/openstack/common/log.py:326
-#, fuzzy, python-format
+#: cinder/openstack/common/log.py:327
+#, python-format
 msgid "Deprecated: %s"
-msgstr "obdrženo: %s"
+msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr "zařízení záznamu systému musí být jedno z: %s"
 
-#: cinder/openstack/common/log.py:709
-#, fuzzy, python-format
+#: cinder/openstack/common/log.py:710
+#, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
-msgstr "Třída %(fullname)s je zastaralá: %(msg)s"
+msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:82
 #, python-format
@@ -3452,10 +3515,9 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
-#, fuzzy
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
-msgstr "v opakujícím volání"
+msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:129
 #, python-format
@@ -3463,9 +3525,8 @@ msgid "Dynamic looping call sleeping for %.02f seconds"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:136
-#, fuzzy
 msgid "in dynamic looping call"
-msgstr "v opakujícím volání"
+msgstr ""
 
 #: cinder/openstack/common/periodic_task.py:43
 #, python-format
@@ -3581,9 +3642,8 @@ msgid "Parent process has died unexpectedly, exiting"
 msgstr ""
 
 #: cinder/openstack/common/service.py:275
-#, fuzzy
 msgid "Unhandled exception"
-msgstr "Vnitřní výjimka: %s"
+msgstr ""
 
 #: cinder/openstack/common/service.py:308
 msgid "Forking too fast, sleeping"
@@ -3674,7 +3734,7 @@ msgstr ""
 
 #: cinder/openstack/common/db/exception.py:44
 msgid "Invalid Parameter: Unicode is not supported by the current database."
-msgstr ""
+msgstr "Neplatný parametr: Unicode není současnou databází podporován."
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:487
 msgid "DB exception wrapped."
@@ -3688,7 +3748,7 @@ msgstr ""
 #: cinder/openstack/common/db/sqlalchemy/session.py:610
 #, python-format
 msgid "SQL connection failed. %s attempts left."
-msgstr ""
+msgstr "Připojení SQL selhalo. Zbývá %s pokusů."
 
 #: cinder/openstack/common/db/sqlalchemy/utils.py:33
 msgid "Sort key supplied was not valid."
@@ -3782,12 +3842,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3821,7 +3881,7 @@ msgstr ""
 #: cinder/scheduler/scheduler_options.py:68
 #, python-format
 msgid "Could not stat scheduler options file %(filename)s: '%(e)s'"
-msgstr ""
+msgstr "Nelze vyhodnotit soubor voleb plánovače %(filename)s: '%(e)s'"
 
 #: cinder/scheduler/scheduler_options.py:78
 #, python-format
@@ -3858,7 +3918,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3875,24 +3935,24 @@ msgstr ""
 #: cinder/tests/fake_utils.py:70
 #, python-format
 msgid "Faking execution of cmd (subprocess): %s"
-msgstr ""
+msgstr "Předstírání spuštění příkazu (subprocess): %s"
 
 #: cinder/tests/fake_utils.py:78
 #, python-format
 msgid "Faked command matched %s"
-msgstr ""
+msgstr "Předstíraný příkaz odpovídá %s"
 
 #: cinder/tests/fake_utils.py:94
 #, python-format
 msgid "Faked command raised an exception %s"
-msgstr ""
+msgstr "Předstíraný příkaz způsobil výjimku %s"
 
 #: cinder/tests/fake_utils.py:97
 #, python-format
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
-msgstr ""
+msgstr "Odpověď na předstíraný příkaz je stdout='%(stdout)s' stderr='%(stderr)s'"
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3910,6 +3970,8 @@ msgid ""
 "The following migrations are missing a downgrade:\n"
 "\t%s"
 msgstr ""
+"Následujícím přesunům chybí snížení na nižší verzi:\n"
+"\t%s"
 
 #: cinder/tests/test_netapp.py:1327
 msgid "Error not a TypeError."
@@ -3924,7 +3986,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3933,12 +3995,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3946,7 +4008,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3964,10 +4026,9 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
-#, fuzzy
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
-msgstr "Neplatný snímek"
+msgstr ""
 
 #: cinder/tests/brick/test_brick_remotefs.py:99
 msgid "Unexpected call to _execute."
@@ -3978,9 +4039,9 @@ msgid "mount failed."
 msgstr ""
 
 #: cinder/tests/integrated/test_login.py:29
-#, fuzzy, python-format
+#, python-format
 msgid "volume: %s"
-msgstr "Odpojit svazek %s"
+msgstr ""
 
 #: cinder/tests/integrated/api/client.py:34
 #, python-format
@@ -3989,47 +4050,50 @@ msgid ""
 "Status Code: %(_status)s\n"
 "Body: %(_body)s"
 msgstr ""
+"%(message)s\n"
+"Kód stavu: %(_status)s\n"
+"Tělo: %(_body)s"
 
 #: cinder/tests/integrated/api/client.py:44
 msgid "Authentication error"
-msgstr ""
+msgstr "Chyba ověření"
 
 #: cinder/tests/integrated/api/client.py:52
 msgid "Authorization error"
-msgstr ""
+msgstr "Chyba oprávnění"
 
 #: cinder/tests/integrated/api/client.py:60
 msgid "Item not found"
-msgstr ""
+msgstr "Položka nenalezena"
 
 #: cinder/tests/integrated/api/client.py:97
 #, python-format
 msgid "Doing %(method)s on %(relative_url)s"
-msgstr ""
+msgstr "Provádění %(method)s na %(relative_url)s"
 
 #: cinder/tests/integrated/api/client.py:100
 #, python-format
 msgid "Body: %s"
-msgstr ""
+msgstr "Tělo: %s"
 
 #: cinder/tests/integrated/api/client.py:124
 #, python-format
 msgid "%(auth_uri)s => code %(http_status)s"
-msgstr ""
+msgstr "%(auth_uri)s => kód %(http_status)s"
 
 #: cinder/tests/integrated/api/client.py:147
 #, python-format
 msgid "%(relative_uri)s => code %(http_status)s"
-msgstr ""
+msgstr "%(relative_uri)s => kód %(http_status)s"
 
 #: cinder/tests/integrated/api/client.py:158
 msgid "Unexpected status code"
-msgstr ""
+msgstr "Neočekávaný kód stavu"
 
 #: cinder/tests/integrated/api/client.py:165
 #, python-format
 msgid "Decoding JSON: %s"
-msgstr ""
+msgstr "Dekódování JSON: %s"
 
 #: cinder/tests/zonemanager/test_brcd_fc_zone_driver.py:124
 #, python-format
@@ -4067,12 +4131,12 @@ msgstr ""
 
 #: cinder/transfer/api.py:102 cinder/volume/api.py:350
 msgid "status must be available"
-msgstr ""
+msgstr "stav musí být dostupný"
 
 #: cinder/transfer/api.py:119
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to create transfer record for %s"
-msgstr "Nelze získat metadata pro ip: %s"
+msgstr ""
 
 #: cinder/transfer/api.py:136
 #, python-format
@@ -4139,20 +4203,19 @@ msgstr ""
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
-msgstr ""
+msgstr "Hledání podle: %s"
 
 #: cinder/volume/api.py:353
 msgid "already attached"
-msgstr ""
+msgstr "již připojeno"
 
 #: cinder/volume/api.py:360
 msgid "status must be in-use to detach"
 msgstr ""
 
 #: cinder/volume/api.py:371
-#, fuzzy
 msgid "Volume status must be available to reserve"
-msgstr "Obraz musí být dostupný"
+msgstr ""
 
 #: cinder/volume/api.py:447
 msgid "Snapshot cannot be created while volume is migrating"
@@ -4193,9 +4256,8 @@ msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
 #: cinder/volume/api.py:703 cinder/volume/api.py:777
-#, fuzzy
 msgid "Volume status must be available/in-use."
-msgstr "Obraz musí být dostupný"
+msgstr ""
 
 #: cinder/volume/api.py:706
 msgid "Volume status is in-use."
@@ -4227,66 +4289,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4320,20 +4382,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4348,18 +4410,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4382,7 +4444,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4397,12 +4459,12 @@ msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
 #: cinder/volume/driver.py:701
-#, fuzzy, python-format
+#, python-format
 msgid "Could not find iSCSI export for volume %s"
-msgstr "Nelze najít obslužnou rutinu pro svazek %(driver_type)s."
+msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4411,13 +4473,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4425,10 +4487,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4453,9 +4522,9 @@ msgid "%s"
 msgstr ""
 
 #: cinder/volume/iscsi.py:184
-#, fuzzy, python-format
+#, python-format
 msgid "Symbolic link %s not found"
-msgstr "značka [%s] nenalezena"
+msgstr ""
 
 #: cinder/volume/iscsi.py:251
 #, python-format
@@ -4467,285 +4536,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
-#, fuzzy, python-format
+#: cinder/volume/manager.py:686
+#, 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"
+msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4761,7 +4824,7 @@ msgstr ""
 #: cinder/volume/volume_types.py:43
 #, python-format
 msgid "DB error: %s"
-msgstr ""
+msgstr "Chyba DB: %s"
 
 #: cinder/volume/qos_specs.py:123 cinder/volume/qos_specs.py:140
 #: cinder/volume/qos_specs.py:272 cinder/volume/volume_types.py:52
@@ -4800,14 +4863,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4821,9 +4884,9 @@ msgstr ""
 
 #: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:284
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
-#, fuzzy, python-format
+#, python-format
 msgid "Creating clone of volume: %s"
-msgstr "Vytvořit snímek svazku %s"
+msgstr ""
 
 #: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
@@ -4933,11 +4996,11 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
-#, fuzzy, python-format
+#, python-format
 msgid "Error running SSH command: %s"
-msgstr "Při spuštění příkazu došlo k nečekané chybě."
+msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:282
 #, python-format
@@ -5013,219 +5076,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
-#, fuzzy, python-format
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
+#, python-format
 msgid "Exception during mounting %s"
-msgstr "Výjimka při načítání rozšíření: %s"
+msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5290,9 +5353,9 @@ msgid " but size is now %d"
 msgstr ""
 
 #: cinder/volume/drivers/nfs.py:380
-#, fuzzy, python-format
+#, python-format
 msgid "%s is already mounted"
-msgstr "skupina %s již existuje"
+msgstr ""
 
 #: cinder/volume/drivers/nfs.py:432
 #, python-format
@@ -5334,175 +5397,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:212
+#, python-format
 msgid "error opening rbd image %s"
-msgstr "Chyba v přesunu %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
-#, fuzzy
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
-msgstr "Neplatný snímek"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:731
+#, python-format
 msgid "not cloneable: %s"
-msgstr "Název roz: %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:754
+#, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
-msgstr "Poškozené tělo zprávy: %(reason)s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5596,9 +5658,9 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:200
 #: cinder/volume/drivers/solidfire.py:269
 #: cinder/volume/drivers/solidfire.py:364
-#, fuzzy, python-format
+#, python-format
 msgid "API response: %s"
-msgstr "odpověď %s"
+msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:220
 #, python-format
@@ -5616,9 +5678,8 @@ msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:396
-#, fuzzy
 msgid "Failed to get model update from clone"
-msgstr "Nelze získat metadata pro ip: %s"
+msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:408
 #, python-format
@@ -5670,8 +5731,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5701,16 +5762,15 @@ msgid "Updating cluster status info"
 msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:671
-#, fuzzy
 msgid "Failed to get updated stats"
-msgstr "Nelze vytvořit typ instance"
+msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5730,9 +5790,9 @@ msgid "Pool %(name)s: %(total)sGB total, %(free)sGB free"
 msgstr ""
 
 #: cinder/volume/drivers/zadara.py:408 cinder/volume/drivers/zadara.py:531
-#, fuzzy, python-format
+#, python-format
 msgid "Volume %(name)s could not be found. It might be already deleted"
-msgstr "Svazek %(volume_id)s nemohl být nastaven."
+msgstr ""
 
 #: cinder/volume/drivers/zadara.py:438
 #, python-format
@@ -5781,22 +5841,22 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
-#, fuzzy, python-format
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
+#, python-format
 msgid "Found iSCSI endpoint: %s"
-msgstr "Vyvoláno Nenalezeno: %s"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:209
 #, python-format
@@ -5872,9 +5932,8 @@ msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:176
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:348
-#, fuzzy
 msgid "Entering create_volume_from_snapshot."
-msgstr "Vytvořit svazek ze snímku %s"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:181
 #, python-format
@@ -6045,9 +6104,9 @@ msgid "Entering delete_volume."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:471
-#, fuzzy, python-format
+#, python-format
 msgid "Delete Volume: %(volume)s"
-msgstr "mazání svazku %(volume_name)s který má snímek"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:478
 #, python-format
@@ -6092,9 +6151,9 @@ msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:534
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:278
-#, fuzzy, python-format
+#, python-format
 msgid "Create snapshot: %(snapshot)s: volume: %(volume)s"
-msgstr "Vytvořit snímek svazku %s"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:544
 #: cinder/volume/drivers/emc/emc_smis_common.py:972
@@ -6125,11 +6184,11 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:583
-#, fuzzy, python-format
+#, python-format
 msgid ""
 "Error Create Snapshot: %(snapshot)s Volume: %(volume)s Error: "
 "%(errordesc)s"
-msgstr "Vytvořit snímek svazku %s"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:605
 #, python-format
@@ -6145,9 +6204,9 @@ msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:617
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:306
-#, fuzzy, python-format
+#, python-format
 msgid "Delete Snapshot: %(snapshot)s: volume: %(volume)s"
-msgstr "Vytvořit snímek svazku %s"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:623
 #, python-format
@@ -6225,9 +6284,9 @@ msgid "ExposePaths parameter LunMaskingSCSIProtocolController: %(lunmasking)s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:771
-#, fuzzy, python-format
+#, python-format
 msgid "Error mapping volume %s."
-msgstr "Chyba v přesunu %s"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:775
 #, python-format
@@ -6374,9 +6433,8 @@ msgid "Found Storage Type in config file: %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1063
-#, fuzzy
 msgid "Storage type not found."
-msgstr "Obraz nenalezen"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1079
 #, python-format
@@ -6384,9 +6442,8 @@ msgid "Found Masking View: %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1082
-#, fuzzy
 msgid "Masking View not found."
-msgstr "Obraz nenalezen"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1097
 #, python-format
@@ -6398,9 +6455,8 @@ msgid "Timeout not specified."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1122
-#, fuzzy
 msgid "Ecom user not found."
-msgstr "Server nenalezen."
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1142
 #, python-format
@@ -6408,14 +6464,12 @@ msgid "Ecom IP: %(ecomIp)s Port: %(ecomPort)s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1146
-#, fuzzy
 msgid "Ecom server not found."
-msgstr "Server nenalezen."
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1153
-#, fuzzy
 msgid "Cannot connect to ECOM server"
-msgstr "Znovu připojeno k frontě"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1165
 #, python-format
@@ -6438,9 +6492,9 @@ msgid "Found Storage Hardware ID Management Service: %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1248
-#, fuzzy, python-format
+#, python-format
 msgid "Pool %(storage_type)s is not found."
-msgstr "Role %(role_id)s nemohla být nalezena."
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1254
 #, python-format
@@ -6458,14 +6512,14 @@ msgid "Pool name: %(poolname)s  System name: %(systemname)s."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1292
-#, fuzzy, python-format
+#, python-format
 msgid "Volume %(volumename)s not found on the array."
-msgstr "Svazek %(volume_id)s nemohl být nastaven."
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1295
-#, fuzzy, python-format
+#, python-format
 msgid "Volume name: %(volumename)s  Volume instance: %(vol_instance)s."
-msgstr "Svazek není nalezen v instanci %(instance_id)s."
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1310
 #, python-format
@@ -6487,9 +6541,9 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1353
-#, fuzzy, python-format
+#, python-format
 msgid "Error finding %s."
-msgstr "Chyba v přesunu %s"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1357
 #, python-format
@@ -6605,18 +6659,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6698,9 +6752,9 @@ msgid "Failed to list %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:251
-#, fuzzy, python-format
+#, python-format
 msgid "create_export: Volume: %(volume)s  Device ID: %(device_id)s"
-msgstr "Připojit svazek %(volume_id)s k instanci %(instance_id)s na %(device)s"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:292
 #, python-format
@@ -6900,93 +6954,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
-#, fuzzy, python-format
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
+#, python-format
 msgid "XML exception reading parameter: %s"
-msgstr "Výjimka při načítání rozšíření: %s"
+msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
-#, fuzzy, python-format
+#: cinder/volume/drivers/hds/hds.py:251
+#, python-format
 msgid "HDP not found: %s"
-msgstr "Instance nenalezena"
+msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
-#, fuzzy, python-format
+#: cinder/volume/drivers/hds/hds.py:396
+#, python-format
 msgid "delete lun %(lun)s on %(name)s"
-msgstr "mazání svazku %(volume_name)s který má snímek"
+msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7074,7 +7128,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7243,7 +7297,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7274,12 +7328,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7312,7 +7366,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7323,111 +7377,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7435,77 +7489,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7659,90 +7713,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7844,14 +7898,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7860,100 +7921,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7961,31 +8027,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8206,15 +8279,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8226,18 +8306,13 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:213
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:250
-#, fuzzy, python-format
+#, python-format
 msgid ""
 "CLI Exception output:\n"
 " command: %(cmd)s\n"
 " stdout: %(out)s\n"
 " stderr: %(err)s"
 msgstr ""
-"%(description)s\n"
-"Příkaz: %(cmd)s\n"
-"Kód ukončení: %(exit_code)s\n"
-"Stdout: %(stdout)r\n"
-"Stderr: %(stderr)r"
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:53
 #, python-format
@@ -8269,12 +8344,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -8384,19 +8459,19 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:238
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get LUN target details for the LUN %s"
-msgstr "Nelze získat metadata pro ip: %s"
+msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:249
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get target portal for the LUN %s"
-msgstr "Nelze získat metadata pro ip: %s"
+msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:252
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get target IQN for the LUN %s"
-msgstr "Nelze získat metadata pro ip: %s"
+msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:290
 #, python-format
@@ -8555,9 +8630,9 @@ msgid "Api version could not be determined."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:1190
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get vol with required size for volume: %s"
-msgstr "Nelze získat metadata pro ip: %s"
+msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:1299
 #, python-format
@@ -8711,7 +8786,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:460
 #, python-format
 msgid "Converted to raw, but format is now %s"
-msgstr ""
+msgstr "Převedeno na prosté, ale formát je nyní %s"
 
 #: cinder/volume/drivers/netapp/nfs.py:470
 #, python-format
@@ -9384,7 +9459,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9433,9 +9508,8 @@ msgid "No headers in server response"
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:89
-#, fuzzy
 msgid "Bad response from server"
-msgstr "Špatná odpověď od SolidFire API"
+msgstr ""
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:90
 #, python-format
@@ -9443,9 +9517,9 @@ msgid "Auto switching to HTTPS connection to %s"
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:96
-#, fuzzy, python-format
+#, python-format
 msgid "Got response: %s"
-msgstr "odpověď %s"
+msgstr ""
 
 #: cinder/volume/drivers/nexenta/nfs.py:85
 #, python-format
@@ -9508,288 +9582,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
-#, fuzzy, python-format
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
+#, python-format
 msgid "Volume (%s) already exists on array"
-msgstr "skupina %s již existuje"
+msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10183,7 +10261,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10343,7 +10421,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10463,62 +10541,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10744,7 +10822,7 @@ msgstr ""
 
 #: cinder/volume/drivers/vmware/volumeops.py:744
 msgid "Copying disk data before snapshot of the VM"
-msgstr ""
+msgstr "Kopírování data disku před snímek instance VM"
 
 #: cinder/volume/drivers/vmware/volumeops.py:754
 #, python-format
@@ -10830,7 +10908,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10838,35 +10916,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10874,42 +10957,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/da/LC_MESSAGES/cinder.po b/cinder/locale/da/LC_MESSAGES/cinder.po
index 41a48f88f..c52a03750 100644
--- a/cinder/locale/da/LC_MESSAGES/cinder.po
+++ b/cinder/locale/da/LC_MESSAGES/cinder.po
@@ -1,16 +1,19 @@
-# Danish translation for cinder
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the cinder package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+# Danish translations for cinder.
+# Copyright (C) 2014 ORGANIZATION
+# This file is distributed under the same license as the cinder project.
 #
-msgid ""
-msgstr ""
-"Project-Id-Version:  cinder\n"
-"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-03-29 06:10+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"
+# Translators:
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011
+# Jens Hyllegaard <jens.hyllegaard@gmail.com>, 2013
+msgid ""
+msgstr ""
+"Project-Id-Version:  Cinder\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
+"Language-Team: Danish "
+"(http://www.transifex.com/projects/p/cinder/language/da/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -33,7 +36,7 @@ msgstr ""
 
 #: cinder/exception.py:88
 msgid "Exception in string format operation"
-msgstr ""
+msgstr "Undtagelse i streng-format handlingen"
 
 #: cinder/exception.py:107
 #, python-format
@@ -736,34 +739,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -782,17 +785,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -801,39 +804,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1326,26 +1329,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1451,7 +1466,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1697,7 +1712,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1706,40 +1721,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2021,7 +2036,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2086,7 +2101,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2097,237 +2112,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2861,7 +2935,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2883,45 +2957,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3046,11 +3124,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3064,7 +3142,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3078,49 +3156,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3171,11 +3249,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3404,25 +3482,25 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
-msgstr ""
+msgstr "syslog faciliteten skal være en af: %s"
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
-msgstr ""
+msgstr "Fatalt kald til forældet konfig: %(msg)s"
 
 #: cinder/openstack/common/loopingcall.py:82
 #, python-format
@@ -3430,7 +3508,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3505,12 +3583,12 @@ msgstr ""
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:448
 #, python-format
 msgid "Result was %s"
-msgstr ""
+msgstr "Resultatet var %s"
 
 #: cinder/openstack/common/processutils.py:179
 #, python-format
 msgid "%r failed. Retrying."
-msgstr ""
+msgstr "%r mislykkedes. Prøver igen."
 
 #: cinder/openstack/common/processutils.py:218
 #, python-format
@@ -3558,7 +3636,7 @@ msgstr ""
 
 #: cinder/openstack/common/service.py:275
 msgid "Unhandled exception"
-msgstr ""
+msgstr "Ubehandlet undtagelse"
 
 #: cinder/openstack/common/service.py:308
 msgid "Forking too fast, sleeping"
@@ -3649,7 +3727,7 @@ msgstr ""
 
 #: cinder/openstack/common/db/exception.py:44
 msgid "Invalid Parameter: Unicode is not supported by the current database."
-msgstr ""
+msgstr "Ugyldig parameter: Unicode er ikke understøttet af den aktuelle database."
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:487
 msgid "DB exception wrapped."
@@ -3757,12 +3835,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3833,7 +3911,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3867,7 +3945,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3899,7 +3977,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3908,12 +3986,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3921,7 +3999,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3939,7 +4017,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4199,66 +4277,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4292,20 +4370,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4320,18 +4398,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4354,7 +4432,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4374,7 +4452,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4383,13 +4461,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4397,10 +4475,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4439,285 +4524,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr "bind %s: slettet"
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4772,14 +4851,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4905,7 +4984,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4985,219 +5064,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5306,174 +5385,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5640,8 +5719,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5674,12 +5753,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5750,19 +5829,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6198,9 +6277,9 @@ msgid "Error mapping volume %s."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:775
-#, fuzzy, python-format
+#, python-format
 msgid "ExposePaths for volume %s completed successfully."
-msgstr "bind %s: slettet"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:791
 #, python-format
@@ -6215,9 +6294,9 @@ msgid "Error unmapping volume %s."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:808
-#, fuzzy, python-format
+#, python-format
 msgid "HidePaths for volume %s completed successfully."
-msgstr "bind %s: slettet"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:821
 #, python-format
@@ -6232,9 +6311,9 @@ msgid "Error mapping volume %(vol)s. %(error)s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:841
-#, fuzzy, python-format
+#, python-format
 msgid "AddMembers for volume %s completed successfully."
-msgstr "bind %s: slettet"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:854
 #, python-format
@@ -6249,9 +6328,9 @@ msgid "Error unmapping volume %(vol)s. %(error)s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:872
-#, fuzzy, python-format
+#, python-format
 msgid "RemoveMembers for volume %s completed successfully."
-msgstr "bind %s: slettet"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:878
 #, python-format
@@ -6568,18 +6647,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6863,93 +6942,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7037,7 +7116,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7206,7 +7285,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7237,12 +7316,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7275,7 +7354,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7286,111 +7365,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7398,77 +7477,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7622,90 +7701,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7807,14 +7886,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7823,100 +7909,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7924,31 +8015,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8169,15 +8267,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8227,12 +8332,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -8357,9 +8462,9 @@ msgid "Failed to get target IQN for the LUN %s"
 msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:290
-#, fuzzy, python-format
+#, python-format
 msgid "Snapshot %s deletion successful"
-msgstr "bind %s: slettet"
+msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:310
 #: cinder/volume/drivers/netapp/iscsi.py:557
@@ -9342,7 +9447,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9465,288 +9570,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10140,7 +10249,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10300,7 +10409,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10420,62 +10529,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10787,7 +10896,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10795,35 +10904,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10831,42 +10945,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/de/LC_MESSAGES/cinder.po b/cinder/locale/de/LC_MESSAGES/cinder.po
index 7ea9e991b..4679befed 100644
--- a/cinder/locale/de/LC_MESSAGES/cinder.po
+++ b/cinder/locale/de/LC_MESSAGES/cinder.po
@@ -1,16 +1,19 @@
-# German translation for cinder
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the cinder package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+# German translations for cinder.
+# Copyright (C) 2014 ORGANIZATION
+# This file is distributed under the same license as the cinder project.
 #
-msgid ""
-msgstr ""
-"Project-Id-Version:  cinder\n"
-"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-03-29 06:10+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"
+# Translators:
+# alecsoft <alec.hans@alecsoft.net>, 2013
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011
+msgid ""
+msgstr ""
+"Project-Id-Version:  Cinder\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
+"Language-Team: German "
+"(http://www.transifex.com/projects/p/cinder/language/de/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -20,25 +23,27 @@ msgstr ""
 #: cinder/context.py:63
 #, python-format
 msgid "Arguments dropped when creating context: %s"
-msgstr ""
+msgstr "Argumente bei Erstellung des Kontext gelöscht: %s"
 
 #: cinder/context.py:107
 #, python-format
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
-msgstr ""
+msgstr "'read_deleted' kann nur 'no', 'yes' oder 'only' sein, nicht '%r'"
 
 #: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
-msgstr ""
+msgstr "Eine unbekannte Ausnahme ist aufgetreten."
 
 #: cinder/exception.py:88
 msgid "Exception in string format operation"
-msgstr ""
+msgstr "Ausnahme bei Zeichenfolgeformatoperation"
 
 #: cinder/exception.py:107
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
+"Fehlerhafte oder nicht erwartete Antwort von Back-End-API des "
+"Datenträgers: %(data)s"
 
 #: cinder/exception.py:112
 #, python-format
@@ -57,21 +62,21 @@ msgstr ""
 
 #: cinder/exception.py:124
 msgid "Not authorized."
-msgstr ""
+msgstr "Nicht autorisiert."
 
 #: cinder/exception.py:129
 msgid "User does not have admin privileges"
-msgstr ""
+msgstr "Benutzer hat keine Admin-Berechtigungen"
 
 #: cinder/exception.py:133
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
-msgstr ""
+msgstr "Richtlinie lässt Ausführung von %(action)s nicht zu."
 
 #: cinder/exception.py:137
-#, fuzzy, python-format
+#, python-format
 msgid "Not authorized for image %(image_id)s."
-msgstr "keine Methode für diese Nachricht gefunden: %s"
+msgstr "Für Image %(image_id)s nicht autorisiert."
 
 #: cinder/exception.py:141
 msgid "Volume driver not ready."
@@ -79,7 +84,7 @@ msgstr ""
 
 #: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
-msgstr ""
+msgstr "Unzulässige Parameter."
 
 #: cinder/exception.py:150
 #, python-format
@@ -95,14 +100,16 @@ msgstr ""
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
+"Datenträger %(volume_id)s ist noch angehängt und muss zuerst abgehängt "
+"werden."
 
 #: cinder/exception.py:163
 msgid "Failed to load data into json format"
-msgstr ""
+msgstr "Fehler beim Laden der Daten ins JSON-Format"
 
 #: cinder/exception.py:167
 msgid "The results are invalid."
-msgstr ""
+msgstr "Die Ergebnisse sind ungültig."
 
 #: cinder/exception.py:171
 #, python-format
@@ -122,7 +129,7 @@ msgstr ""
 #: cinder/exception.py:183
 #, python-format
 msgid "Invalid content type %(content_type)s."
-msgstr ""
+msgstr "Ungültiger Inhaltstyp %(content_type)s."
 
 #: cinder/exception.py:187
 #, python-format
@@ -132,7 +139,7 @@ msgstr ""
 #: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
-msgstr ""
+msgstr "%(err)s"
 
 #: cinder/exception.py:197
 #, python-format
@@ -146,12 +153,12 @@ msgstr ""
 
 #: cinder/exception.py:206
 msgid "Service is unavailable at this time."
-msgstr ""
+msgstr "Service ist derzeit nicht verfügbar."
 
 #: cinder/exception.py:210
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
-msgstr ""
+msgstr "Image %(image_id)s ist nicht zulässig: %(reason)s"
 
 #: cinder/exception.py:214
 #, python-format
@@ -165,17 +172,19 @@ msgstr ""
 
 #: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
-msgstr ""
+msgstr "Ressource konnte nicht gefunden werden."
 
 #: cinder/exception.py:228
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
-msgstr ""
+msgstr "Datenträger %(volume_id)s konnte nicht gefunden werden."
 
 #: cinder/exception.py:232
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
+"Datenträger %(volume_id)s enthält keine Metadaten mit Schlüssel "
+"%(metadata_key)s."
 
 #: cinder/exception.py:237
 #, python-format
@@ -198,16 +207,20 @@ msgstr ""
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
+"Momentaufnahme %(snapshot_id)s enthält keine Metadaten mit Schlüssel "
+"%(metadata_key)s."
 
 #: cinder/exception.py:255
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
-msgstr ""
+msgstr "Datenträgertyp %(volume_type_id)s konnte nicht gefunden werden."
 
 #: cinder/exception.py:259
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
+"Datenträgertyp mit dem Namen %(volume_type_name)s konnte nicht gefunden "
+"werden."
 
 #: cinder/exception.py:264
 #, python-format
@@ -215,6 +228,8 @@ msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
+"Datenträgertyp %(volume_type_id)s hat keine Sonderspezifikationen mit "
+"Schlüssel %(extra_specs_key)s"
 
 #: cinder/exception.py:269
 #, python-format
@@ -226,62 +241,62 @@ msgstr ""
 #: cinder/exception.py:274
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
-msgstr ""
+msgstr "Momentaufnahme %(snapshot_id)s konnte nicht gefunden werden."
 
 #: cinder/exception.py:278
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
-msgstr ""
+msgstr "Löschen von Datenträger %(volume_name)s mit Momentaufnahme"
 
 #: cinder/exception.py:282
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
-msgstr ""
+msgstr "Löschen von Momentaufnahme %(snapshot_name)s mit abhängigen Datenträgern"
 
 #: cinder/exception.py:287
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
-msgstr ""
+msgstr "Keine Ziel-ID für Datenträger %(volume_id)s gefunden."
 
 #: cinder/exception.py:291
 #, python-format
 msgid "Invalid image href %(image_href)s."
-msgstr ""
+msgstr "Ungültiger Image-Hyperlink %(image_href)s."
 
 #: cinder/exception.py:295
 #, python-format
 msgid "Image %(image_id)s could not be found."
-msgstr ""
+msgstr "Image %(image_id)s konnte nicht gefunden werden."
 
 #: cinder/exception.py:299
 #, python-format
 msgid "Service %(service_id)s could not be found."
-msgstr ""
+msgstr "Service %(service_id)s konnte nicht gefunden werden."
 
 #: cinder/exception.py:303
 #, python-format
 msgid "Host %(host)s could not be found."
-msgstr ""
+msgstr "Host %(host)s konnte nicht gefunden werden."
 
 #: cinder/exception.py:307
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
-msgstr ""
+msgstr "Scheduler-Hostfilter %(filter_name)s konnte nicht gefunden werden."
 
 #: cinder/exception.py:311
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
-msgstr ""
+msgstr "Scheduler-Host-Weigher %(weigher_name)s konnte nicht gefunden werden."
 
 #: cinder/exception.py:315
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
-msgstr ""
+msgstr "Binärprogramm %(binary)s auf Host %(host)s konnte nicht gefunden werden."
 
 #: cinder/exception.py:319
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
-msgstr ""
+msgstr "Ungültiger Reservierungsablauf %(expire)s."
 
 #: cinder/exception.py:323
 #, python-format
@@ -289,50 +304,52 @@ msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
+"Durch die Änderung wäre die Nutzung kleiner als 0 für die folgenden "
+"Ressourcen: %(unders)s"
 
 #: cinder/exception.py:328
 msgid "Quota could not be found"
-msgstr ""
+msgstr "Quote konnte nicht gefunden werden"
 
 #: cinder/exception.py:332
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
-msgstr ""
+msgstr "Unbekannte Quotenressourcen %(unknown)s."
 
 #: cinder/exception.py:336
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
-msgstr ""
+msgstr "Quote für Projekt %(project_id)s konnte nicht gefunden werden."
 
 #: cinder/exception.py:340
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
-msgstr ""
+msgstr "Quotenklasse %(class_name)s konnte nicht gefunden werden."
 
 #: cinder/exception.py:344
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
-msgstr ""
+msgstr "Quotennutzung für Projekt %(project_id)s konnte nicht gefunden werden."
 
 #: cinder/exception.py:348
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
-msgstr ""
+msgstr "Quotenreservierung %(uuid)s konnte nicht gefunden werden."
 
 #: cinder/exception.py:352
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
-msgstr ""
+msgstr "Quote für Ressourcen überschritten: %(overs)s"
 
 #: cinder/exception.py:356
 #, python-format
 msgid "File %(file_path)s could not be found."
-msgstr ""
+msgstr "Datei %(file_path)s konnte nicht gefunden werden."
 
 #: cinder/exception.py:365
 #, python-format
 msgid "Volume Type %(id)s already exists."
-msgstr ""
+msgstr "Datenträgertyp %(id)s ist bereits vorhanden."
 
 #: cinder/exception.py:369
 #, python-format
@@ -347,27 +364,27 @@ msgstr ""
 #: cinder/exception.py:377
 #, python-format
 msgid "Malformed message body: %(reason)s"
-msgstr ""
+msgstr "Fehlerhafter Nachrichtentext: %(reason)s"
 
 #: cinder/exception.py:381
 #, python-format
 msgid "Could not find config at %(path)s"
-msgstr ""
+msgstr "Konfiguration konnte unter %(path)s nicht gefunden werden"
 
 #: cinder/exception.py:385
-#, fuzzy, python-format
+#, python-format
 msgid "Could not find parameter %(param)s"
-msgstr "Nicht möglich volume %s zufinden"
+msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
-msgstr ""
+msgstr "paste-App '%(name)s' konnte von %(path)s nicht geladen werden"
 
 #: cinder/exception.py:393
 #, python-format
 msgid "No valid host was found. %(reason)s"
-msgstr ""
+msgstr "Es wurde kein gültiger Host gefunden. %(reason)s"
 
 #: cinder/exception.py:402
 #, python-format
@@ -384,37 +401,41 @@ msgstr ""
 #: cinder/exception.py:415
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
-msgstr ""
+msgstr "Maximale Anzahl an zulässigen Datenträgern (%(allowed)d) überschritten"
 
 #: cinder/exception.py:419
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
-msgstr ""
+msgstr "Maximale Anzahl an zulässigen Momentaufnahmen (%(allowed)d) überschritten"
 
 #: cinder/exception.py:423
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
-msgstr ""
+msgstr "Mehrere Datenträger mit dem Namen %(vol_name)s gefunden"
 
 #: cinder/exception.py:427
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
+"Kann volume_type mit dem Namen %(name)s und Spezifikationen "
+"%(extra_specs)s nicht erstellen"
 
 #: cinder/exception.py:432
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
-msgstr ""
+msgstr "Unbekannter oder nicht unterstützter Befehl %(cmd)s"
 
 #: cinder/exception.py:436
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
-msgstr ""
+msgstr "Fehlerhafte Antwort auf Befehl %(cmd)s: %(reason)s"
 
 #: cinder/exception.py:440
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
+"Operation fehlgeschlagen mit status=%(status)s. Vollständiger "
+"Speicherauszug: %(data)s"
 
 #: cinder/exception.py:444
 #, python-format
@@ -422,6 +443,8 @@ msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
+"Glance-Metadaten können nicht aktualisiert werden. Schlüssel %(key)s für "
+"Datenträger-ID %(volume_id)s vorhanden"
 
 #: cinder/exception.py:449
 #, python-format
@@ -449,9 +472,9 @@ msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:469
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to copy image to volume: %(reason)s"
-msgstr "Nicht möglich volume %s zufinden"
+msgstr ""
 
 #: cinder/exception.py:473
 msgid "Invalid Ceph args provided for backup rbd operation"
@@ -476,7 +499,7 @@ msgstr ""
 #: cinder/exception.py:493
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
-msgstr ""
+msgstr "Sicherung %(backup_id)s konnte nicht gefunden werden."
 
 #: cinder/exception.py:497
 msgid "Failed to identify volume backend."
@@ -485,7 +508,7 @@ msgstr ""
 #: cinder/exception.py:501
 #, python-format
 msgid "Invalid backup: %(reason)s"
-msgstr ""
+msgstr "Ungültige Sicherung: %(reason)s"
 
 #: cinder/exception.py:505
 #, python-format
@@ -607,35 +630,37 @@ msgstr ""
 #: cinder/exception.py:611
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
-msgstr ""
+msgstr "Serverobjekt für Initiator %(name)s kann nicht erstellt werden"
 
 #: cinder/exception.py:615
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
-msgstr ""
+msgstr "Serverobjekt für Initiator %(name)s kann nicht gefunden werden"
 
 #: cinder/exception.py:619
 msgid "Unable to find any active VPSA controller"
-msgstr ""
+msgstr "Es kann kein aktiver VPSA-Controller gefunden werden"
 
 #: cinder/exception.py:623
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
-msgstr ""
+msgstr "Zusatzeinheiten für Datenträger %(name)s konnten nicht abgerufen werden"
 
 #: cinder/exception.py:627
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
+"Ungültige Zusatzeinheiteninformationen für Datenträger %(name)s: "
+"%(reason)s"
 
 #: cinder/exception.py:631
 #, python-format
 msgid "Bad HTTP response status %(status)s"
-msgstr ""
+msgstr "Fehlerhafter HTTP-Antwortstatus %(status)s"
 
 #: cinder/exception.py:636
 msgid "Bad response from SolidFire API"
-msgstr ""
+msgstr "Ungültige Antwort von SolidFire-API"
 
 #: cinder/exception.py:640
 msgid "SolidFire Cinder Driver exception"
@@ -644,12 +669,12 @@ msgstr ""
 #: cinder/exception.py:644
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
-msgstr ""
+msgstr "Fehler in Antwort von SolidFire-API: Data=%(data)s"
 
 #: cinder/exception.py:648
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
-msgstr ""
+msgstr "Konto %(account_name)s auf SolidFire-Gerät nicht auffindbar"
 
 #: cinder/exception.py:654
 #, python-format
@@ -658,24 +683,26 @@ msgstr ""
 
 #: cinder/exception.py:659
 msgid "Unknown NFS exception"
-msgstr ""
+msgstr "Unbekannte NFS-Ausnahme"
 
 #: cinder/exception.py:663
 msgid "No mounted NFS shares found"
-msgstr ""
+msgstr "Kein angehängtes gemeinsam genutztes NFS-Laufwerk gefunden"
 
 #: cinder/exception.py:667 cinder/exception.py:680
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
+"Es ist kein gemeinsam genutztes Laufwerk vorhanden, das %(volume_size)sG "
+"hosten kann"
 
 #: cinder/exception.py:672
 msgid "Unknown Gluster exception"
-msgstr ""
+msgstr "Unbekannte Gluster-Ausnahme"
 
 #: cinder/exception.py:676
 msgid "No mounted Gluster shares found"
-msgstr ""
+msgstr "Keine angehängten gemeinsam genutzten Gluster-Laufwerke gefunden"
 
 #: cinder/exception.py:684
 #, python-format
@@ -726,44 +753,44 @@ msgstr ""
 
 #: cinder/manager.py:128
 msgid "Notifying Schedulers of capabilities ..."
-msgstr ""
+msgstr "Scheduler werden über Leistungsmerkmale benachrichtigt ..."
 
 #: cinder/policy.py:30
 msgid "JSON file representing policy"
-msgstr ""
+msgstr "Richtlinien-JSON-Datei"
 
 #: cinder/policy.py:33
 msgid "Rule checked when requested rule is not found"
-msgstr ""
+msgstr "Regel wird überprüft, wenn angeforderte Regel nicht gefunden wird"
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -782,17 +809,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
-msgstr ""
+msgstr "%(topic)s-Knoten wird gestartet (Version %(version_string)s)"
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -801,40 +828,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
-msgstr ""
+msgstr "Service ohne Datenbankeintrag abgebrochen"
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr "Das Service-Datenbank-Objekt ist verschwunden, es wird erneut erzeugt."
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
-msgstr ""
+msgstr "Verbindung zu Modellserver wiederhergestellt!"
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
-msgstr ""
+msgstr "Modellserver nicht mehr verbunden"
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
-#, fuzzy
 msgid "Full set of CONF:"
-msgstr "Alle vorhandenen FLAGS:"
+msgstr "Vollständiger Satz von CONF:"
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -851,27 +877,27 @@ msgstr ""
 
 #: cinder/utils.py:213
 msgid "Specify a password or private_key"
-msgstr ""
+msgstr "Geben Sie einen Wert für 'password' oder 'private_key' an"
 
 #: cinder/utils.py:229
 #, python-format
 msgid "Error connecting via ssh: %s"
-msgstr ""
+msgstr "Fehler beim Herstellen einer Verbindung über SSH: %s"
 
 #: cinder/utils.py:413
 #, python-format
 msgid "Invalid backend: %s"
-msgstr ""
+msgstr "Ungültiges Back-End: %s"
 
 #: cinder/utils.py:424
 #, python-format
 msgid "backend %s"
-msgstr ""
+msgstr "Back-End %s"
 
 #: cinder/utils.py:699
 #, python-format
 msgid "Could not remove tmpdir: %s"
-msgstr ""
+msgstr "tmpdir konnte nicht entfernt werden: %s"
 
 #: cinder/utils.py:760
 #, python-format
@@ -896,28 +922,31 @@ msgstr ""
 #: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
-msgstr ""
+msgstr "'cert_file' konnte nicht gefunden werden: %s"
 
 #: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find ca_file : %s"
-msgstr "Nicht möglich volume %s zufinden"
+msgstr "'ca_file' konnte nicht gefunden werden: %s"
 
 #: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
-msgstr ""
+msgstr "'key_file' konnte nicht gefunden werden: %s"
 
 #: 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 ""
+"Wenn der Server im SSL-Modus läuft, müssen Sie sowohl für die "
+"'cert_file'- als auch für die 'key_file'-Option in Ihrer "
+"Konfigurationsdatei einen Wert angeben"
 
 #: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
-msgstr ""
+msgstr "Keine Bindung an %(host)s:%(port)s möglich nach Versuch über 30 Sekunden"
 
 #: cinder/wsgi.py:215
 #, python-format
@@ -926,15 +955,15 @@ msgstr ""
 
 #: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
-msgstr ""
+msgstr "WSGI-Server wird gestoppt."
 
 #: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
-msgstr ""
+msgstr "WSGI-Server wurde gestoppt."
 
 #: cinder/wsgi.py:322
 msgid "You must implement __call__"
-msgstr ""
+msgstr "Sie müssen '__call__' implementieren"
 
 #: cinder/api/auth.py:26
 msgid ""
@@ -950,83 +979,83 @@ msgstr ""
 
 #: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:282
 msgid "limit param must be an integer"
-msgstr ""
+msgstr "'limit'-Parameter muss eine Ganzzahl sein"
 
 #: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:279
 msgid "limit param must be positive"
-msgstr ""
+msgstr "'limit'-Parameter muss positiv sein"
 
 #: cinder/api/common.py:120
 msgid "offset param must be an integer"
-msgstr ""
+msgstr "'offset'-Parameter muss eine Ganzzahl sein"
 
 #: cinder/api/common.py:134
 msgid "offset param must be positive"
-msgstr ""
+msgstr "'offset'-Parameter muss positiv sein"
 
 #: cinder/api/common.py:162
 #, python-format
 msgid "marker [%s] not found"
-msgstr ""
+msgstr "Marker [%s] nicht gefunden"
 
 #: cinder/api/common.py:189
 #, python-format
 msgid "href %s does not contain version"
-msgstr ""
+msgstr "Hyperlink %s enthält Version nicht"
 
 #: cinder/api/extensions.py:183
 msgid "Initializing extension manager."
-msgstr ""
+msgstr "Erweiterungsmanager wird initialisiert."
 
 #: cinder/api/extensions.py:198
 #, python-format
 msgid "Loaded extension: %s"
-msgstr ""
+msgstr "Geladene Erweiterung: %s"
 
 #: cinder/api/extensions.py:236
 #, python-format
 msgid "Ext name: %s"
-msgstr ""
+msgstr "Name der Erweiterung: %s"
 
 #: cinder/api/extensions.py:237
 #, python-format
 msgid "Ext alias: %s"
-msgstr ""
+msgstr "Alias der Erweiterung: %s"
 
 #: cinder/api/extensions.py:238
 #, python-format
 msgid "Ext description: %s"
-msgstr ""
+msgstr "Beschreibung der Erweiterung: %s"
 
 #: cinder/api/extensions.py:240
 #, python-format
 msgid "Ext namespace: %s"
-msgstr ""
+msgstr "Namensbereich der Erweiterung: %s"
 
 #: cinder/api/extensions.py:241
 #, python-format
 msgid "Ext updated: %s"
-msgstr ""
+msgstr "Erweiterung aktualisiert: %s"
 
 #: cinder/api/extensions.py:243
 #, python-format
 msgid "Exception loading extension: %s"
-msgstr ""
+msgstr "Ausnahme beim Laden von Erweiterung: %s"
 
 #: cinder/api/extensions.py:257
 #, python-format
 msgid "Loading extension %s"
-msgstr ""
+msgstr "Erweiterung %s wird geladen"
 
 #: cinder/api/extensions.py:263
 #, python-format
 msgid "Calling extension factory %s"
-msgstr ""
+msgstr "Aufruf von Erweiterungs-Factory %s"
 
 #: cinder/api/extensions.py:277
 #, python-format
 msgid "osapi_volume_extension is set to deprecated path: %s"
-msgstr ""
+msgstr "osapi_volume_extension ist auf veralteten Pfad eingestellt: %s"
 
 #: cinder/api/extensions.py:279
 #, python-format
@@ -1034,21 +1063,23 @@ msgid ""
 "Please set your flag or cinder.conf settings for osapi_volume_extension "
 "to: %s"
 msgstr ""
+"Legen Sie Ihre Einstellungen für 'flag' oder 'cinder.conf' für "
+"osapi_volume_extension fest: %s"
 
 #: cinder/api/extensions.py:288
 #, python-format
 msgid "Failed to load extension %(ext_factory)s: %(exc)s"
-msgstr ""
+msgstr "Laden von Erweiterung %(ext_factory)s fehlgeschlagen: %(exc)s"
 
 #: cinder/api/extensions.py:357
 #, python-format
 msgid "Failed to load extension %(classpath)s: %(exc)s"
-msgstr ""
+msgstr "Laden von Erweiterung %(classpath)s fehlgeschlagen: %(exc)s"
 
 #: cinder/api/extensions.py:382
 #, python-format
 msgid "Failed to load extension %(ext_name)s: %(exc)s"
-msgstr ""
+msgstr "Laden von Erweiterung %(ext_name)s fehlgeschlagen: %(exc)s"
 
 #: cinder/api/sizelimit.py:25
 msgid ""
@@ -1058,66 +1089,70 @@ msgstr ""
 
 #: cinder/api/xmlutil.py:266
 msgid "element is not a child"
-msgstr ""
+msgstr "Element ist kein untergeordnetes Element"
 
 #: cinder/api/xmlutil.py:463
 msgid "root element selecting a list"
-msgstr ""
+msgstr "Stammelement wählt eine Liste aus"
 
 #: cinder/api/xmlutil.py:786
 #, python-format
 msgid "Template tree mismatch; adding slave %(slavetag)s to master %(mastertag)s"
 msgstr ""
+"Abweichung bei Vorlagenbaum; untergeordnete %(slavetag)s wird zur "
+"übergeordneten Einheit %(mastertag)s hinzugefügt"
 
 #: cinder/api/xmlutil.py:907
 msgid "subclasses must implement construct()!"
-msgstr ""
+msgstr "Unterklassen müssen Konstrukt () implementieren!"
 
 #: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
-msgstr ""
+msgstr "Aktualisierung von %(resource)s '%(id)s' mit '%(update)r'"
 
 #: cinder/api/contrib/backups.py:161
 #, python-format
 msgid "show called for member %s"
-msgstr ""
+msgstr "'show' hat Element %s aufgerufen"
 
 #: cinder/api/contrib/backups.py:173
 #, python-format
 msgid "delete called for member %s"
-msgstr ""
+msgstr "'delete' hat Element %s aufgerufen"
 
 #: cinder/api/contrib/backups.py:176
 #, python-format
 msgid "Delete backup with id: %s"
-msgstr ""
+msgstr "Sicherung mit folgender ID löschen: %s"
 
 #: cinder/api/contrib/backups.py:218
 #, python-format
 msgid "Creating new backup %s"
-msgstr ""
+msgstr "Neue Sicherung %s erstellen"
 
 #: cinder/api/contrib/backups.py:228 cinder/api/contrib/backups.py:260
 #: cinder/api/contrib/volume_transfer.py:157
 #: cinder/api/contrib/volume_transfer.py:193
 msgid "Incorrect request body format"
-msgstr ""
+msgstr "Falsches Anforderungshauptteilformat"
 
 #: cinder/api/contrib/backups.py:234
 #, python-format
 msgid "Creating backup of volume %(volume_id)s in container %(container)s"
 msgstr ""
+"Erstellen von Sicherung für Datenträger %(volume_id)s in Container "
+"%(container)s"
 
 #: cinder/api/contrib/backups.py:257
 #, python-format
 msgid "Restoring backup %(backup_id)s (%(body)s)"
-msgstr ""
+msgstr "Wiederherstellen von Sicherung %(backup_id)s (%(body)s)"
 
 #: cinder/api/contrib/backups.py:267
 #, python-format
 msgid "Restoring backup %(backup_id)s to volume %(volume_id)s"
-msgstr ""
+msgstr "Wiederherstellen von Sicherung %(backup_id)s auf Datenträger %(volume_id)s"
 
 #: cinder/api/contrib/backups.py:300
 #, python-format
@@ -1150,31 +1185,31 @@ msgstr ""
 
 #: cinder/api/contrib/extended_snapshot_attributes.py:60
 msgid "Snapshot not found."
-msgstr ""
+msgstr "Momentaufnahme nicht gefunden."
 
 #: cinder/api/contrib/hosts.py:86 cinder/api/openstack/wsgi.py:237
 msgid "cannot understand XML"
-msgstr ""
+msgstr "Kann XML nicht verstehen"
 
 #: cinder/api/contrib/hosts.py:136
 #, python-format
 msgid "Host '%s' could not be found."
-msgstr ""
+msgstr "Host '%s' konnte nicht gefunden werden."
 
 #: cinder/api/contrib/hosts.py:165
 #, python-format
 msgid "Invalid status: '%s'"
-msgstr ""
+msgstr "Ungültiger Status: '%s'"
 
 #: cinder/api/contrib/hosts.py:168
 #, python-format
 msgid "Invalid update setting: '%s'"
-msgstr ""
+msgstr "Ungültige Aktualisierungseinstellung: '%s'"
 
 #: cinder/api/contrib/hosts.py:180
 #, python-format
 msgid "Setting host %(host)s to %(state)s."
-msgstr ""
+msgstr "Host %(host)s wird auf %(state)s gesetzt."
 
 #: cinder/api/contrib/hosts.py:206
 msgid "Describe-resource is admin only functionality"
@@ -1182,7 +1217,7 @@ msgstr ""
 
 #: cinder/api/contrib/hosts.py:214
 msgid "Host not found"
-msgstr ""
+msgstr "Host nicht gefunden"
 
 #: cinder/api/contrib/qos_specs_manage.py:110
 msgid "Please specify a name for QoS specs."
@@ -1219,7 +1254,7 @@ msgstr ""
 
 #: cinder/api/contrib/quotas.py:68
 msgid "Quota limit must be -1 or greater."
-msgstr ""
+msgstr "Quotengrenzwert muss mindestens -1 sein. "
 
 #: cinder/api/contrib/quotas.py:105
 msgid "Missing required element quota_set in request body."
@@ -1266,19 +1301,19 @@ msgstr ""
 
 #: cinder/api/contrib/types_extra_specs.py:101
 msgid "Request body empty"
-msgstr ""
+msgstr "Anforderungshauptteil leer"
 
 #: cinder/api/contrib/types_extra_specs.py:105
 #: cinder/api/v1/snapshot_metadata.py:75 cinder/api/v1/volume_metadata.py:75
 #: cinder/api/v2/snapshot_metadata.py:75 cinder/api/v2/volume_metadata.py:74
 msgid "Request body and URI mismatch"
-msgstr ""
+msgstr "Abweichung zwischen Anforderungshauptteil und URI"
 
 #: cinder/api/contrib/types_extra_specs.py:108
 #: cinder/api/v1/snapshot_metadata.py:79 cinder/api/v1/volume_metadata.py:79
 #: cinder/api/v2/snapshot_metadata.py:79 cinder/api/v2/volume_metadata.py:78
 msgid "Request body contains too many items"
-msgstr ""
+msgstr "Anforderungshauptteil enthält zu viele Elemente"
 
 #: cinder/api/contrib/types_extra_specs.py:152
 msgid ""
@@ -1317,7 +1352,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_actions.py:230
 msgid "No image_name was specified in request."
-msgstr ""
+msgstr "Kein image_name in Anforderung angegeben."
 
 #: cinder/api/contrib/volume_actions.py:238
 msgid "Bad value for 'force' parameter."
@@ -1327,26 +1362,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1377,9 +1424,9 @@ msgid "Creating new volume transfer %s"
 msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:162
-#, fuzzy, python-format
+#, python-format
 msgid "Creating transfer of volume %s"
-msgstr "Nicht möglich volume %s zufinden"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:183
 #, python-format
@@ -1452,7 +1499,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1462,17 +1509,17 @@ msgstr ""
 
 #: cinder/api/middleware/auth.py:112
 msgid "Invalid service catalog json."
-msgstr ""
+msgstr "Ungültige Servicekatalog-JSON."
 
 #: cinder/api/middleware/fault.py:44
 #, python-format
 msgid "Caught error: %s"
-msgstr ""
+msgstr "Fehler abgefangen: %s"
 
 #: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:978
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
-msgstr ""
+msgstr "%(url)s mit HTTP %(status)d zurückgegeben"
 
 #: cinder/api/middleware/fault.py:69
 #, python-format
@@ -1482,16 +1529,16 @@ msgstr ""
 #: cinder/api/middleware/sizelimit.py:55 cinder/api/middleware/sizelimit.py:64
 #: cinder/api/middleware/sizelimit.py:78
 msgid "Request is too large."
-msgstr ""
+msgstr "Anforderung ist zu groß."
 
 #: cinder/api/openstack/__init__.py:69
 msgid "Must specify an ExtensionManager class"
-msgstr ""
+msgstr "Eine ExtensionManager-Klasse muss angegeben werden"
 
 #: cinder/api/openstack/__init__.py:80
 #, python-format
 msgid "Extended resource: %s"
-msgstr ""
+msgstr "Erweiterte Ressource: %s"
 
 #: cinder/api/openstack/__init__.py:104
 #, python-format
@@ -1499,11 +1546,13 @@ msgid ""
 "Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
 "resource"
 msgstr ""
+"Erweiterung %(ext_name)s: Ressource %(collection)s kann nicht erweitert "
+"werden: keine solche Ressource vorhanden"
 
 #: cinder/api/openstack/__init__.py:110
 #, python-format
 msgid "Extension %(ext_name)s extending resource: %(collection)s"
-msgstr ""
+msgstr "Erweiterung %(ext_name)s erweitert Ressource: %(collection)s"
 
 #: cinder/api/openstack/__init__.py:126
 msgid ""
@@ -1519,43 +1568,43 @@ msgstr ""
 
 #: cinder/api/openstack/wsgi.py:212 cinder/api/openstack/wsgi.py:628
 msgid "cannot understand JSON"
-msgstr ""
+msgstr "kann JSON nicht verstehen"
 
 #: cinder/api/openstack/wsgi.py:633
 msgid "too many body keys"
-msgstr ""
+msgstr "zu viele Textschlüssel"
 
 #: cinder/api/openstack/wsgi.py:671
 #, python-format
 msgid "Exception handling resource: %s"
-msgstr ""
+msgstr "Ausnahmebehandlungsressource: %s"
 
 #: cinder/api/openstack/wsgi.py:676
 #, python-format
 msgid "Fault thrown: %s"
-msgstr ""
+msgstr "Ausgelöster Fehler: %s"
 
 #: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "HTTP exception thrown: %s"
-msgstr ""
+msgstr "Ausgelöste HTTP-Ausnahme: %s"
 
 #: cinder/api/openstack/wsgi.py:787
 msgid "Empty body provided in request"
-msgstr ""
+msgstr "Leerer Nachrichtentext in Anforderung angegeben"
 
 #: cinder/api/openstack/wsgi.py:793
 msgid "Unrecognized Content-Type provided in request"
-msgstr ""
+msgstr "Nicht erkannter Inhaltstyp in Anforderung angegeben"
 
 #: cinder/api/openstack/wsgi.py:797
 msgid "No Content-Type provided in request"
-msgstr ""
+msgstr "Kein Inhaltstyp in Anforderung angegeben"
 
 #: cinder/api/openstack/wsgi.py:908
 #, python-format
 msgid "There is no such action: %s"
-msgstr ""
+msgstr "Aktion existiert nicht: %s"
 
 #: cinder/api/openstack/wsgi.py:911 cinder/api/openstack/wsgi.py:924
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
@@ -1567,20 +1616,20 @@ msgstr ""
 #: cinder/api/v2/volume_metadata.py:52 cinder/api/v2/volume_metadata.py:70
 #: cinder/api/v2/volume_metadata.py:95 cinder/api/v2/volume_metadata.py:120
 msgid "Malformed request body"
-msgstr ""
+msgstr "Fehlerhafter Anforderungshauptteil"
 
 #: cinder/api/openstack/wsgi.py:921
 msgid "Unsupported Content-Type"
-msgstr ""
+msgstr "Nicht unterstützter Inhaltstyp"
 
 #: cinder/api/openstack/wsgi.py:933
 msgid "Malformed request url"
-msgstr ""
+msgstr "Fehlerhafte Anforderungs-URL"
 
 #: cinder/api/openstack/wsgi.py:981
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
-msgstr ""
+msgstr "%(url)s hat einen Fehler zurückgegeben: %(e)s"
 
 #: cinder/api/openstack/volume/__init__.py:25
 msgid ""
@@ -1600,17 +1649,19 @@ msgid ""
 "Only %(value)s %(verb)s request(s) can be made to %(uri)s every "
 "%(unit_string)s."
 msgstr ""
+"Nur %(value)s %(verb)s-Anforderung(en) an %(uri)s alle %(unit_string)s "
+"möglich"
 
 #: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
-msgstr ""
+msgstr "Diese Anforderung war kursbegrenzt."
 
 #: cinder/api/v1/snapshot_metadata.py:37 cinder/api/v1/snapshot_metadata.py:117
 #: cinder/api/v1/snapshot_metadata.py:156 cinder/api/v2/snapshot_metadata.py:37
 #: cinder/api/v2/snapshot_metadata.py:117
 #: cinder/api/v2/snapshot_metadata.py:156
 msgid "snapshot does not exist"
-msgstr ""
+msgstr "Momentaufnahme ist nicht vorhanden"
 
 #: cinder/api/v1/snapshot_metadata.py:139
 #: cinder/api/v1/snapshot_metadata.py:149 cinder/api/v1/volume_metadata.py:139
@@ -1618,12 +1669,12 @@ msgstr ""
 #: cinder/api/v2/snapshot_metadata.py:149 cinder/api/v2/volume_metadata.py:138
 #: cinder/api/v2/volume_metadata.py:148
 msgid "Metadata item was not found"
-msgstr ""
+msgstr "Metadatenelement wurde nicht gefunden"
 
 #: cinder/api/v1/snapshots.py:119 cinder/api/v2/snapshots.py:120
 #, python-format
 msgid "Delete snapshot with id: %s"
-msgstr ""
+msgstr "Momentaufnahme mit folgender ID löschen: %s"
 
 #: cinder/api/v1/snapshots.py:173 cinder/api/v2/snapshots.py:184
 msgid "'volume_id' must be specified"
@@ -1632,33 +1683,33 @@ msgstr ""
 #: cinder/api/v1/snapshots.py:182 cinder/api/v2/snapshots.py:193
 #, python-format
 msgid "Create snapshot from volume %s"
-msgstr ""
+msgstr "Momentaufnahme aus Datenträger %s erstellen"
 
 #: cinder/api/v1/snapshots.py:186 cinder/api/v2/snapshots.py:202
 #, python-format
 msgid "Invalid value '%s' for force. "
-msgstr ""
+msgstr "Wert '%s' für Zwangsausführung ungültig. "
 
 #: cinder/api/v1/volume_metadata.py:37 cinder/api/v1/volume_metadata.py:117
 #: cinder/api/v1/volume_metadata.py:156 cinder/api/v2/volume_metadata.py:36
 #: cinder/api/v2/volume_metadata.py:116 cinder/api/v2/volume_metadata.py:155
 msgid "volume does not exist"
-msgstr ""
+msgstr "Datenträger ist nicht vorhanden"
 
 #: cinder/api/v1/volumes.py:114
 #, python-format
 msgid "vol=%s"
-msgstr ""
+msgstr "vol=%s"
 
 #: cinder/api/v1/volumes.py:293 cinder/api/v2/volumes.py:181
 #, python-format
 msgid "Delete volume with id: %s"
-msgstr ""
+msgstr "Datenträger mit folgender ID löschen: %s"
 
 #: cinder/api/v1/volumes.py:347 cinder/api/v1/volumes.py:351
 #: cinder/api/v2/volumes.py:251 cinder/api/v2/volumes.py:255
 msgid "Invalid imageRef provided."
-msgstr ""
+msgstr "Angabe für imageRef ungültig."
 
 #: cinder/api/v1/volumes.py:391 cinder/api/v2/volumes.py:308
 #, python-format
@@ -1673,12 +1724,12 @@ msgstr ""
 #: cinder/api/v1/volumes.py:415 cinder/api/v2/volumes.py:331
 #, python-format
 msgid "Create volume of %s GB"
-msgstr ""
+msgstr "Datenträger mit %s GB erstellen"
 
 #: cinder/api/v1/volumes.py:504
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
-msgstr ""
+msgstr "Optionen '%(bad_options)s' werden aus Abfrage entfernt"
 
 #: cinder/api/v2/snapshots.py:111 cinder/api/v2/snapshots.py:126
 #: cinder/api/v2/snapshots.py:267
@@ -1698,49 +1749,55 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
-msgstr ""
+msgstr "Optionen '%s' werden aus Abfrage entfernt"
 
 #: cinder/backup/api.py:66
 msgid "Backup status must be available or error"
-msgstr ""
+msgstr "Sicherungsstatus muss 'available' oder 'error' sein"
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
-msgstr ""
+msgstr "Zu sichernder Datenträger muss verfügbar sein"
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
-msgstr ""
+msgstr "Sicherungsstatus muss 'available' sein"
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
-msgstr ""
+msgstr "Wiederherzustellende Sicherung hat ungültige Größe"
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
+"Erstellen von Datenträger mit %(size)s GB für Wiederherstellung von "
+"Sicherung %(backup_id)s"
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
-msgstr ""
+msgstr "Wiederherzustellender Datenträger muss verfügbar sein"
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
+"Datenträgergröße %(volume_size)d ist zu klein zum Wiederherstellen von "
+"Sicherung der Größe %(size)d."
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
+"Überschreiben von Datenträger %(volume_id)s mit wiederhergestellter "
+"Sicherung %(backup_id)s"
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2079,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2144,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,243 +2155,302 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
+#, python-format
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:702
 #, python-format
-msgid "Creating base image='%s'"
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
 #, python-format
 msgid "unsupported compression algorithm: %s"
-msgstr ""
+msgstr "Nicht unterstützter Komprimierungsalgorithmus: %s"
 
 #: cinder/backup/drivers/swift.py:122
 #, python-format
@@ -2345,16 +2461,18 @@ msgstr ""
 #, python-format
 msgid "_create_container started, container: %(container)s,backup: %(backup_id)s"
 msgstr ""
+"_create_container gestartet, Container: %(container)s, Sicherung: "
+"%(backup_id)s"
 
 #: cinder/backup/drivers/swift.py:159
 #, python-format
 msgid "_generate_swift_object_name_prefix: %s"
-msgstr ""
+msgstr "_generate_swift_object_name_prefix: %s"
 
 #: cinder/backup/drivers/swift.py:168
 #, python-format
 msgid "generated object list: %s"
-msgstr ""
+msgstr "erstellte Objektliste: %s"
 
 #: cinder/backup/drivers/swift.py:179
 #, python-format
@@ -2362,6 +2480,8 @@ msgid ""
 "_write_metadata started, container name: %(container)s, metadata "
 "filename: %(filename)s"
 msgstr ""
+"_write_metadata gestartet, Container-Name: %(container)s, Name von "
+"Metadatendatei: %(filename)s"
 
 #: cinder/backup/drivers/swift.py:197
 #, python-format
@@ -2370,10 +2490,13 @@ msgid ""
 "[%(etag)s] is not the same as MD5 of metadata file sent to swift "
 "[%(md5)s]"
 msgstr ""
+"Fehler beim Schreiben von Metadatendatei an Swift. MD5 von Metadatendatei"
+" in Swift [%(etag)s] entspricht nicht MD5 von an Swift gesendeter "
+"Metadatendatei [%(md5)s]"
 
 #: cinder/backup/drivers/swift.py:202
 msgid "_write_metadata finished"
-msgstr ""
+msgstr "_write_metadata fertiggestellt"
 
 #: cinder/backup/drivers/swift.py:207
 #, python-format
@@ -2381,16 +2504,18 @@ msgid ""
 "_read_metadata started, container name: %(container)s, metadata filename:"
 " %(filename)s"
 msgstr ""
+"_read_metadata gestartet, Container-Name: %(container)s, Name von "
+"Metadatendatei: %(filename)s"
 
 #: cinder/backup/drivers/swift.py:212
 #, python-format
 msgid "_read_metadata finished (%s)"
-msgstr ""
+msgstr "_read_metadata fertiggestellt (%s)"
 
 #: cinder/backup/drivers/swift.py:222
 #, python-format
 msgid "volume size %d is invalid."
-msgstr ""
+msgstr "Datenträgergröße %d ist ungültig."
 
 #: cinder/backup/drivers/swift.py:236
 #, python-format
@@ -2399,10 +2524,13 @@ msgid ""
 "%(volume_size_bytes)d, swift object names prefix %(object_prefix)s, "
 "availability zone: %(availability_zone)s"
 msgstr ""
+"Starten von Sicherung von Datenträger: %(volume_id)s auf Swift. "
+"Datenträgergröße: %(volume_size_bytes)d, Swift-Objektnamenpräfix "
+"%(object_prefix)s, Verfügbarkeitszone: %(availability_zone)s"
 
 #: cinder/backup/drivers/swift.py:260
 msgid "reading chunk of data from volume"
-msgstr ""
+msgstr "Lesen von Datenblock von Datenträger"
 
 #: cinder/backup/drivers/swift.py:267
 #, python-format
@@ -2410,24 +2538,26 @@ msgid ""
 "compressed %(data_size_bytes)d bytes of data to %(comp_size_bytes)d bytes"
 " using %(algorithm)s"
 msgstr ""
+"Daten von %(data_size_bytes)d Bytes auf %(comp_size_bytes)d Bytes "
+"komprimiert mithilfe von %(algorithm)s"
 
 #: cinder/backup/drivers/swift.py:276
 msgid "not compressing data"
-msgstr ""
+msgstr "Keine Datenkomprimierung"
 
 #: cinder/backup/drivers/swift.py:280
 msgid "About to put_object"
-msgstr ""
+msgstr "Kurz vor put_object"
 
 #: cinder/backup/drivers/swift.py:286
 #, python-format
 msgid "swift MD5 for %(object_name)s: %(etag)s"
-msgstr ""
+msgstr "Swift-MD5 für %(object_name)s: %(etag)s"
 
 #: cinder/backup/drivers/swift.py:290
 #, python-format
 msgid "backup MD5 for %(object_name)s: %(md5)s"
-msgstr ""
+msgstr "Sicherungs-MD5 für %(object_name)s: %(md5)s"
 
 #: cinder/backup/drivers/swift.py:293
 #, python-format
@@ -2435,15 +2565,17 @@ msgid ""
 "error writing object to swift, MD5 of object in swift %(etag)s is not the"
 " same as MD5 of object sent to swift %(md5)s"
 msgstr ""
+"Fehler beim Schreiben von Objekt an Swift. MD5 von Objekt in Swift "
+"[%(etag)s] entspricht nicht MD5 von an Swift gesendetem Objekt [%(md5)s]"
 
 #: cinder/backup/drivers/swift.py:301
 msgid "Calling eventlet.sleep(0)"
-msgstr ""
+msgstr "Aufruf von eventlet.sleep(0)"
 
 #: cinder/backup/drivers/swift.py:319
 #, python-format
 msgid "backup %s finished."
-msgstr ""
+msgstr "Sicherung %s fertiggestellt."
 
 #: cinder/backup/drivers/swift.py:352
 #, python-format
@@ -2454,17 +2586,21 @@ msgstr ""
 #, python-format
 msgid "v1 swift volume backup restore of %s started"
 msgstr ""
+"Wiederherstellung von %s mit Swift-Datenträgersicherung Version 1 "
+"gestartet"
 
 #: cinder/backup/drivers/swift.py:367
 #, python-format
 msgid "metadata_object_names = %s"
-msgstr ""
+msgstr "metadata_object_names = %s"
 
 #: cinder/backup/drivers/swift.py:373
 msgid ""
 "restore_backup aborted, actual swift object list in swift does not match "
 "object list stored in metadata"
 msgstr ""
+"restore_backup abgebrochen, tatsächliche Swift-Objektliste in Swift "
+"stimmt nicht mit in Metadaten gespeicherter Objektliste überein"
 
 #: cinder/backup/drivers/swift.py:379
 #, python-format
@@ -2472,16 +2608,21 @@ msgid ""
 "restoring object from swift. backup: %(backup_id)s, container: "
 "%(container)s, swift object name: %(object_name)s, volume: %(volume_id)s"
 msgstr ""
+"Wiederherstellung von Objekt von Swift. Sicherung: %(backup_id)s, "
+"Container: %(container)s, Swift-Objektname: %(object_name)s, Datenträger:"
+" %(volume_id)s"
 
 #: cinder/backup/drivers/swift.py:395
 #, python-format
 msgid "decompressing data using %s algorithm"
-msgstr ""
+msgstr "Dekomprimieren von Daten mithilfe von Algorithmus %s"
 
 #: cinder/backup/drivers/swift.py:418
 #, python-format
 msgid "v1 swift volume backup restore of %s finished"
 msgstr ""
+"Wiederherstellung von %s mit Swift-Datenträgersicherung Version 1 "
+"fertiggestellt"
 
 #: cinder/backup/drivers/swift.py:426
 #, python-format
@@ -2489,40 +2630,45 @@ msgid ""
 "starting restore of backup %(object_prefix)s from swift container: "
 "%(container)s, to volume %(volume_id)s, backup: %(backup_id)s"
 msgstr ""
+"Starten von Wiederherstellung von Sicherung %(object_prefix)s von Swift-"
+"Container: %(container)s auf Datenträger %(volume_id)s, Sicherung: "
+"%(backup_id)s"
 
 #: cinder/backup/drivers/swift.py:440
 #, python-format
 msgid "Restoring swift backup version %s"
-msgstr ""
+msgstr "Wiederherstellen von Swift-Sicherungsversion %s"
 
 #: cinder/backup/drivers/swift.py:445
 #, python-format
 msgid "No support to restore swift backup version %s"
 msgstr ""
+"Keine Unterstützung für das Wiederherstellen von Swift-Sicherungsversion "
+"%s"
 
 #: cinder/backup/drivers/swift.py:461
 #, python-format
 msgid "restore %(backup_id)s to %(volume_id)s finished."
-msgstr ""
+msgstr "Wiederherstellen von %(backup_id)s auf %(volume_id)s fertiggestellt."
 
 #: cinder/backup/drivers/swift.py:475
 msgid "swift error while listing objects, continuing with delete"
-msgstr ""
+msgstr "Swift-Fehler beim Auflisten von Objekten. Weiter mit Löschen"
 
 #: cinder/backup/drivers/swift.py:484
 #, python-format
 msgid "swift error while deleting object %s, continuing with delete"
-msgstr ""
+msgstr "Swift-Fehler beim Löschen von Objekt %s. Weiter mit Löschen"
 
 #: cinder/backup/drivers/swift.py:487
 #, python-format
 msgid "deleted swift object: %(swift_object_name)s in container: %(container)s"
-msgstr ""
+msgstr "Gelöschtes Swift-Objekt: %(swift_object_name)s in Container: %(container)s"
 
 #: cinder/backup/drivers/swift.py:497
 #, python-format
 msgid "delete %s finished"
-msgstr ""
+msgstr "Löschen von %s abgeschlossen"
 
 #: cinder/backup/drivers/tsm.py:78
 #, python-format
@@ -2711,17 +2857,17 @@ msgstr ""
 #: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
-msgstr ""
+msgstr "Fehler beim Erstellen von iSCSI-Ziel für Datenträger %(volume_id)s."
 
 #: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
-msgstr ""
+msgstr "Fehler beim Entfernen von iSCSI-Ziel für Datenträger %(volume_id)s."
 
 #: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
-msgstr ""
+msgstr "Fehler beim Anhängen von iSCSI-Ziel für Datenträger %(volume_id)s."
 
 #: cinder/brick/exception.py:120
 #, python-format
@@ -2853,7 +2999,7 @@ msgstr ""
 #: cinder/brick/iscsi/iscsi.py:172
 #, python-format
 msgid "Creating iscsi_target for: %s"
-msgstr ""
+msgstr "Erstellung von iscsi_target für: %s"
 
 #: cinder/brick/iscsi/iscsi.py:179
 #, python-format
@@ -2862,10 +3008,10 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
+#, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
-msgstr "Nicht möglich volume %s zufinden"
+msgstr ""
 
 #: cinder/brick/iscsi/iscsi.py:222
 #, python-format
@@ -2873,59 +3019,66 @@ msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
+"Fehler beim Erstellen von iSCSI-Ziel für Datenträger-ID: %(vol_id)s. "
+"Stellen Sie sicher, dass Ihre tgtd-Konfigurationsdatei 'include "
+"%(volumes_dir)s/*' enthält"
 
 #: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
-msgstr ""
+msgstr "Entfernen von iscsi_target für: %s"
 
 #: cinder/brick/iscsi/iscsi.py:256
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
+#, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
-msgstr "Nicht möglich volume %s zufinden"
+msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
-msgid "valid iqn needed for show_target"
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
+msgid "valid iqn needed for show_target"
+msgstr "Gültiger qualifizierter iSCSI-Name für show_target erforderlich"
+
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
-msgstr ""
+msgstr "Entfernen von iscsi_target für Datenträger: %s"
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
-msgstr ""
+msgstr "Erstellung von iscsi_target für Datenträger: %s"
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
-msgstr ""
+msgstr "Entfernen von iscsi_target: %s"
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
-msgstr ""
+msgstr "Fehler beim Hinzufügen von qualifiziertem Initiator-iSCSI-Name %s zu Ziel"
 
 #: cinder/brick/local_dev/lvm.py:75
 msgid "Error creating Volume Group"
@@ -2956,9 +3109,9 @@ msgid "StdErr  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:82
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to locate Volume Group %s"
-msgstr "Nicht möglich volume %s zufinden"
+msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:157
 msgid "Error querying thin pool about data_percent"
@@ -3047,82 +3200,81 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
 #: cinder/common/sqlalchemyutils.py:66
 #: cinder/openstack/common/db/sqlalchemy/utils.py:72
 msgid "Id not in sort_keys; is sort_keys unique?"
-msgstr ""
+msgstr "ID nicht in 'sort_keys' enthalten; ist 'sort_keys' eindeutig?"
 
 #: cinder/common/sqlalchemyutils.py:114
 #: cinder/openstack/common/db/sqlalchemy/utils.py:120
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
-msgstr ""
+msgstr "Unbekannte Sortierrichtung; muss 'desc' oder 'asc' sein"
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
 
 #: cinder/db/sqlalchemy/api.py:65
 msgid "Use of empty request context is deprecated"
-msgstr ""
+msgstr "Verwendung von leerem Anforderungskontext ist veraltet"
 
 #: cinder/db/sqlalchemy/api.py:192
 #, python-format
 msgid "Unrecognized read_deleted value '%s'"
-msgstr ""
+msgstr "Nicht erkannter read_deleted-Wert '%s'"
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
-#, fuzzy
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
-msgstr "Volume %s: wird erstellt"
+msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3131,19 +3283,21 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migration.py:37
 msgid "version should be an integer"
-msgstr ""
+msgstr "Version sollte eine Ganzzahl sein"
 
 #: cinder/db/sqlalchemy/migration.py:64
 msgid "Upgrade DB using Essex release first."
 msgstr ""
+"Führen Sie zuerst ein Upgrade für die Datenbank unter Verwendung des "
+"Essex-Release durch."
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/001_cinder_init.py:240
 msgid "Exception while creating table."
-msgstr ""
+msgstr "Ausnahme bei Tabellenerstellung"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/001_cinder_init.py:269
 msgid "Downgrade from initial Cinder install is unsupported."
-msgstr ""
+msgstr "Herabstufen von ursprünglicher Cinder-Installation wird nicht unterstützt."
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:49
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:74
@@ -3155,7 +3309,7 @@ msgstr ""
 #: cinder/db/sqlalchemy/migrate_repo/versions/020_add_volume_admin_metadata_table.py:46
 #, python-format
 msgid "Table |%s| not created!"
-msgstr ""
+msgstr "Tabelle |%s| nicht erstellt!"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:127
 msgid "Dropping foreign key reservations_ibfk_1 failed."
@@ -3163,31 +3317,31 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:133
 msgid "quota_classes table not dropped"
-msgstr ""
+msgstr "'quota_classes'-Tabelle nicht gelöscht"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:140
 msgid "quota_usages table not dropped"
-msgstr ""
+msgstr "quota_usages-Tabelle nicht gelöscht"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:147
 msgid "reservations table not dropped"
-msgstr ""
+msgstr "reservations-Tabelle nicht gelöscht"
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
-msgstr ""
+msgstr "volume_glance_metadata-Tabelle nicht gelöscht"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/008_add_backup.py:68
 msgid "backups table not dropped"
-msgstr ""
+msgstr "backups-Tabelle nicht gelöscht"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/009_add_snapshot_metadata_table.py:58
 msgid "snapshot_metadata table not dropped"
-msgstr ""
+msgstr "snapshot_metadata-Tabelle nicht gelöscht"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/010_add_transfers_table.py:61
 msgid "transfers table not dropped"
@@ -3280,7 +3434,7 @@ msgstr ""
 
 #: cinder/image/image_utils.py:94 cinder/image/image_utils.py:199
 msgid "'qemu-img info' parsing failed."
-msgstr ""
+msgstr "Auswertung von 'qemu-img info' fehlgeschlagen."
 
 #: cinder/image/image_utils.py:101
 #, python-format
@@ -3315,7 +3469,7 @@ msgstr ""
 #: cinder/image/image_utils.py:206
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
-msgstr ""
+msgstr "fmt=%(fmt)s gesichert durch:%(backing_file)s"
 
 #: cinder/image/image_utils.py:224
 #, python-format
@@ -3325,7 +3479,7 @@ msgstr ""
 #: cinder/image/image_utils.py:260
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
-msgstr ""
+msgstr "In %(f1)s konvertiert, Format ist nun jedoch %(f2)s"
 
 #: cinder/keymgr/conf_key_mgr.py:78
 msgid ""
@@ -3350,7 +3504,7 @@ msgstr ""
 #: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
-msgstr ""
+msgstr "Ursprüngliche Ausnahme wird gelöscht: %s"
 
 #: cinder/openstack/common/excutils.py:91
 #, python-format
@@ -3360,17 +3514,20 @@ msgstr ""
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
-msgstr ""
+msgstr "Im Cache gespeicherte Datei %s wird neu geladen"
 
 #: cinder/openstack/common/gettextutils.py:271
 msgid "Message objects do not support addition."
-msgstr ""
+msgstr "Das Nachrichtenobjekt unterstützt kein Hinzufügen."
 
 #: cinder/openstack/common/gettextutils.py:280
 msgid ""
 "Message objects do not support str() because they may contain non-ascii "
 "characters. Please use unicode() or translate() instead."
 msgstr ""
+"Nachrichtenobjekte unterstützen kein str() denn sie können nicht-ASCII "
+"Zeichen enthalten. Bitte verwenden Sie statt dessen unicode() oder "
+"translate()."
 
 #: cinder/openstack/common/imageutils.py:75
 #, python-format
@@ -3379,76 +3536,82 @@ msgstr ""
 
 #: cinder/openstack/common/imageutils.py:104
 msgid "Snapshot list encountered but no header found!"
-msgstr ""
+msgstr "Momentaufnahmenliste gefunden, aber kein Header gefunden!"
 
 #: cinder/openstack/common/lockutils.py:102
 #, python-format
 msgid "Could not release the acquired lock `%s`"
-msgstr ""
+msgstr "Angeforderte Sperre `%s` konnte nicht freigegeben werden"
 
 #: cinder/openstack/common/lockutils.py:189
 #, python-format
 msgid "Got semaphore \"%(lock)s\" for method \"%(method)s\"..."
-msgstr ""
+msgstr "Semaphor \"%(lock)s\" für Methode \"%(method)s\" erhalten..."
 
 #: cinder/openstack/common/lockutils.py:200
 #, python-format
 msgid "Attempting to grab file lock \"%(lock)s\" for method \"%(method)s\"..."
-msgstr ""
+msgstr "Versuch, Dateisperre \"%(lock)s\" für Methode \"%(method)s\" zu greifen..."
 
 #: cinder/openstack/common/lockutils.py:227
 #, python-format
 msgid "Got file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
+"Dateisperre \"%(lock)s\" unter %(path)s für Methode \"%(method)s\" "
+"erhalten..."
 
 #: cinder/openstack/common/lockutils.py:235
 #, python-format
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
+"Dateisperre \"%(lock)s\" unter %(path)s für Methode \"%(method)s\" "
+"freigegeben..."
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
-msgstr ""
+msgstr "Veraltet: %s"
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
-msgstr ""
+msgstr "Fehler beim laden der Logging Konfiguration %(log_config)s: %(err_msg)s"
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
-msgstr ""
+msgstr "syslog-Funktion muss einer der folgenden Werte sein: %s"
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
-msgstr ""
+msgstr "Schwerwiegender Aufruf an veraltete Konfiguration: %(msg)s"
 
 #: cinder/openstack/common/loopingcall.py:82
 #, python-format
 msgid "task run outlasted interval by %s sec"
-msgstr ""
+msgstr "Ausgeführte Task hat Intervall um %s Sekunden überschritten"
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
-msgstr ""
+msgstr "in Schleifenaufruf mit festgelegter Dauer"
 
 #: cinder/openstack/common/loopingcall.py:129
 #, python-format
 msgid "Dynamic looping call sleeping for %.02f seconds"
-msgstr ""
+msgstr "der dynamischen Schleifenaufruf ruht für %.02f Sekunden"
 
 #: cinder/openstack/common/loopingcall.py:136
 msgid "in dynamic looping call"
-msgstr ""
+msgstr "in dynamischen Schleifenaufruf"
 
 #: cinder/openstack/common/periodic_task.py:43
 #, python-format
 msgid "Unexpected argument for periodic task creation: %(arg)s."
 msgstr ""
+"Unerwartetes Argument zur Erzeugung einer wiederkehrenden Aufgabe: "
+"%(arg)s."
 
 #: cinder/openstack/common/periodic_task.py:134
 #, python-format
@@ -3463,12 +3626,12 @@ msgstr ""
 #: cinder/openstack/common/periodic_task.py:177
 #, python-format
 msgid "Running periodic task %(full_task_name)s"
-msgstr ""
+msgstr "Ausführen von regelmäßiger Task %(full_task_name)s"
 
 #: cinder/openstack/common/periodic_task.py:186
 #, python-format
 msgid "Error during %(full_task_name)s: %(e)s"
-msgstr ""
+msgstr "Fehler bei %(full_task_name)s: %(e)s"
 
 #: cinder/openstack/common/policy.py:149
 #, python-format
@@ -3476,26 +3639,30 @@ msgid ""
 "Inheritance-based rules are deprecated; use the default brain instead of "
 "%s."
 msgstr ""
+"Auf geerbten Informationen basierende Regeln sind veraltet. Verwenden Sie"
+" statt %s die Standardregeln."
 
 #: cinder/openstack/common/policy.py:163
 #, python-format
 msgid "Failed to understand rule %(match)r"
-msgstr ""
+msgstr "Fehler bei Verstehen von Regel %(match)r"
 
 #: cinder/openstack/common/policy.py:173
 #, python-format
 msgid "Inheritance-based rules are deprecated; update _check_%s"
 msgstr ""
+"Auf geerbten Elementen basierende Regeln sind veraltet. _check_%s "
+"aktualisieren"
 
 #: cinder/openstack/common/policy.py:180
 #, python-format
 msgid "No handler for matches of kind %s"
-msgstr ""
+msgstr "Kein Handler für Übereinstimmungen des Typs %s"
 
 #: cinder/openstack/common/processutils.py:127
 #, python-format
 msgid "Got unknown keyword args to utils.execute: %r"
-msgstr ""
+msgstr "Unbekannte Schlüsselwortargumente für utils.execute erhalten: %r"
 
 #: cinder/openstack/common/processutils.py:142
 #, python-format
@@ -3512,20 +3679,20 @@ msgstr "Ergebnis war %s"
 #: cinder/openstack/common/processutils.py:179
 #, python-format
 msgid "%r failed. Retrying."
-msgstr ""
+msgstr "%r fehlgeschlagen. Neuversuch."
 
 #: cinder/openstack/common/processutils.py:218
 #, python-format
 msgid "Running cmd (SSH): %s"
-msgstr ""
+msgstr "CMD wird ausgeführt (Secure Shell): %s"
 
 #: cinder/openstack/common/processutils.py:220
 msgid "Environment not supported over SSH"
-msgstr ""
+msgstr "Umgebung über Secure Shell nicht unterstützt"
 
 #: cinder/openstack/common/processutils.py:224
 msgid "process_input not supported over SSH"
-msgstr ""
+msgstr "'process_input' über Secure Shell nicht unterstützt"
 
 #: cinder/openstack/common/request_utils.py:66
 #, python-format
@@ -3548,7 +3715,7 @@ msgstr ""
 #: cinder/openstack/common/service.py:269
 #, python-format
 msgid "Caught %s, exiting"
-msgstr ""
+msgstr "%s abgefangen. Vorgang wird beendet"
 
 #: cinder/openstack/common/service.py:187
 msgid "Exception during rpc cleanup."
@@ -3556,60 +3723,60 @@ msgstr ""
 
 #: cinder/openstack/common/service.py:238
 msgid "Parent process has died unexpectedly, exiting"
-msgstr ""
+msgstr "Übergeordneter Prozess wurde unerwartet abgebrochen. Vorgang wird beendet"
 
 #: cinder/openstack/common/service.py:275
 msgid "Unhandled exception"
-msgstr ""
+msgstr "Nicht behandelte Ausnahme"
 
 #: cinder/openstack/common/service.py:308
 msgid "Forking too fast, sleeping"
-msgstr ""
+msgstr "Verzweigung zu schnell; im Ruhemodus"
 
 #: cinder/openstack/common/service.py:327
 #, python-format
 msgid "Started child %d"
-msgstr ""
+msgstr "Untergeordnetes Element %d gestartet"
 
 #: cinder/openstack/common/service.py:337
 #, python-format
 msgid "Starting %d workers"
-msgstr ""
+msgstr "Starten von %d Workers"
 
 #: cinder/openstack/common/service.py:354
 #, python-format
 msgid "Child %(pid)d killed by signal %(sig)d"
-msgstr ""
+msgstr "Untergeordnetes Element %(pid)d durch Signal %(sig)d abgebrochen"
 
 #: cinder/openstack/common/service.py:358
 #, python-format
 msgid "Child %(pid)s exited with status %(code)d"
-msgstr ""
+msgstr "Untergeordnete %(pid)s mit Status %(code)d beendet"
 
 #: cinder/openstack/common/service.py:362
 #, python-format
 msgid "pid %d not in child list"
-msgstr ""
+msgstr "PID %d nicht in Liste untergeordneter Elemente"
 
 #: cinder/openstack/common/service.py:392
 #, python-format
 msgid "Caught %s, stopping children"
-msgstr ""
+msgstr "%s abgefangen, untergeordnete Elemente werden gestoppt"
 
 #: cinder/openstack/common/service.py:410
 #, python-format
 msgid "Waiting on %d children to exit"
-msgstr ""
+msgstr "Warten auf Beenden von %d untergeordneten Elementen"
 
 #: cinder/openstack/common/sslutils.py:98
 #, python-format
 msgid "Invalid SSL version : %s"
-msgstr ""
+msgstr "Ungültige SSL Version: %s"
 
 #: cinder/openstack/common/strutils.py:92
 #, python-format
 msgid "Unrecognized value '%(val)s', acceptable values are: %(acceptable)s"
-msgstr ""
+msgstr "Unbekannter Wert '%(val)s', bekannte Werte sind: %(acceptable)s"
 
 #: cinder/openstack/common/strutils.py:202
 #, python-format
@@ -3638,38 +3805,44 @@ msgstr ""
 #: cinder/openstack/common/crypto/utils.py:29
 msgid "An unknown error occurred in crypto utils."
 msgstr ""
+"Ein unbekannter Fehler ist Zusammenhang mit den crypto-Hilfsprogrammen "
+"aufgetreten."
 
 #: cinder/openstack/common/crypto/utils.py:36
 #, python-format
 msgid "Block size of %(given)d is too big, max = %(maximum)d"
-msgstr ""
+msgstr "Blockgröße von %(given)d ist zu groß, max = %(maximum)d"
 
 #: cinder/openstack/common/crypto/utils.py:45
 #, python-format
 msgid "Length of %(given)d is too long, max = %(maximum)d"
-msgstr ""
+msgstr "Länge von %(given)d ist zu groß, max = %(maximum)d"
 
 #: cinder/openstack/common/db/exception.py:44
 msgid "Invalid Parameter: Unicode is not supported by the current database."
 msgstr ""
+"Ungültiger Parameter: Unicode wird von der aktuellen Datenbank nicht "
+"unterstützt."
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:487
 msgid "DB exception wrapped."
-msgstr ""
+msgstr "Datenbankausnahme eingeschlossen."
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:538
 #, python-format
 msgid "Got mysql server has gone away: %s"
 msgstr ""
+"Es wurde festgestellt, dass keine Verbindung zum mysql-Server mehr "
+"vorhanden ist: %s"
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:610
 #, python-format
 msgid "SQL connection failed. %s attempts left."
-msgstr ""
+msgstr "SQL-Verbindung fehlgeschlagen. Noch %s weitere Versuche."
 
 #: cinder/openstack/common/db/sqlalchemy/utils.py:33
 msgid "Sort key supplied was not valid."
-msgstr ""
+msgstr "Der angegebene Sortierschlüssel war nicht gültig. "
 
 #: cinder/openstack/common/scheduler/filters/capabilities_filter.py:54
 #, python-format
@@ -3688,7 +3861,7 @@ msgstr ""
 #: cinder/openstack/common/scheduler/filters/ignore_attempted_hosts_filter.py:52
 #, python-format
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
-msgstr ""
+msgstr "Host '%(host)s %(pass_msg)s'.  Zuvor versuchte Hosts: %(hosts)s"
 
 #: cinder/scheduler/driver.py:69
 msgid "Must implement host_passes_filters"
@@ -3700,11 +3873,11 @@ msgstr ""
 
 #: cinder/scheduler/driver.py:78
 msgid "Must implement a fallback schedule"
-msgstr ""
+msgstr "Implementierung eines Ersatzzeitplans erforderlich"
 
 #: cinder/scheduler/driver.py:82
 msgid "Must implement schedule_create_volume"
-msgstr ""
+msgstr "schedule_create_volume muss implementiert werden"
 
 #: cinder/scheduler/filter_scheduler.py:98
 #, python-format
@@ -3725,7 +3898,7 @@ msgstr ""
 
 #: cinder/scheduler/filter_scheduler.py:156
 msgid "Invalid value for 'scheduler_max_attempts', must be >=1"
-msgstr ""
+msgstr "Ungültiger Wert für scheduler_max_attempts; Wert muss >= 1 sein"
 
 #: cinder/scheduler/filter_scheduler.py:174
 #, python-format
@@ -3733,11 +3906,15 @@ msgid ""
 "Error scheduling %(volume_id)s from last vol-service: %(last_host)s : "
 "%(exc)s"
 msgstr ""
+"Fehler bei Planung von %(volume_id)s von letztem Datenträgerservice: "
+"%(last_host)s : %(exc)s"
 
 #: cinder/scheduler/filter_scheduler.py:207
 #, python-format
 msgid "Exceeded max scheduling attempts %(max_attempts)d for volume %(volume_id)s"
 msgstr ""
+"Maximale Anzahl %(max_attempts)d Planungsversuche überschritten für "
+"Datenträger %(volume_id)s"
 
 #: cinder/scheduler/filter_scheduler.py:259
 #, python-format
@@ -3752,19 +3929,19 @@ msgstr ""
 #: cinder/scheduler/host_manager.py:266
 #, python-format
 msgid "Ignoring %(service_name)s service update from %(host)s"
-msgstr ""
+msgstr "%(service_name)s-Serviceaktualisierung von %(host)s wird ignoriert"
 
 #: cinder/scheduler/host_manager.py:271
 #, python-format
 msgid "Received %(service_name)s service update from %(host)s."
-msgstr ""
+msgstr "%(service_name)s-Serviceaktualisierung von %(host)s erhalten."
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3793,12 +3970,12 @@ msgstr ""
 #: cinder/scheduler/manager.py:219
 #, python-format
 msgid "Failed to schedule_%(method)s: %(ex)s"
-msgstr ""
+msgstr "Fehler bei schedule_%(method)s: %(ex)s"
 
 #: cinder/scheduler/scheduler_options.py:68
 #, python-format
 msgid "Could not stat scheduler options file %(filename)s: '%(e)s'"
-msgstr ""
+msgstr "Scheduler-Optionsdatei %(filename)s konnte nicht gestartet werden: '%(e)s'"
 
 #: cinder/scheduler/scheduler_options.py:78
 #, python-format
@@ -3808,6 +3985,8 @@ msgstr ""
 #: cinder/scheduler/filters/capacity_filter.py:43
 msgid "Free capacity not set: volume node info collection broken."
 msgstr ""
+"Freie Kapazität nicht festgelegt: Informationssammlung von "
+"Datenträgerknoten unterbrochen."
 
 #: cinder/scheduler/filters/capacity_filter.py:57
 #, python-format
@@ -3815,6 +3994,8 @@ msgid ""
 "Insufficient free space for volume creation (requested / avail): "
 "%(requested)s/%(available)s"
 msgstr ""
+"Nicht ausreichend freier Speicherplatz für Erstellung von Datenträger "
+"(angefordert / verfügbar): %(requested)s/%(available)s"
 
 #: cinder/scheduler/flows/create_volume.py:53
 msgid "No volume_id provided to populate a request_spec from"
@@ -3833,9 +4014,9 @@ msgstr ""
 #: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:883
 #, python-format
 msgid "FAKE ISCSI: %s"
-msgstr ""
+msgstr "iSCSI IMITIERT: %s"
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3847,29 +4028,31 @@ msgstr ""
 #: cinder/tests/fake_driver.py:124 cinder/tests/fake_driver.py:129
 #, python-format
 msgid "LoggingVolumeDriver: %s"
-msgstr ""
+msgstr "LoggingVolumeDriver: %s"
 
 #: cinder/tests/fake_utils.py:70
 #, python-format
 msgid "Faking execution of cmd (subprocess): %s"
-msgstr ""
+msgstr "Ausführung von CMD (Unterprozess) wird imitiert: %s"
 
 #: cinder/tests/fake_utils.py:78
 #, python-format
 msgid "Faked command matched %s"
-msgstr ""
+msgstr "Imitierter Befehl stimmte mit %s überein"
 
 #: cinder/tests/fake_utils.py:94
 #, python-format
 msgid "Faked command raised an exception %s"
-msgstr ""
+msgstr "Imitierter Befehl hat eine Ausnahme des Typs '%s' verursacht"
 
 #: cinder/tests/fake_utils.py:97
 #, python-format
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
+"Antwort auf imitierten Befehl lautet stdout='%(stdout)s' "
+"stderr='%(stderr)s'"
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3879,7 +4062,7 @@ msgstr ""
 #: cinder/tests/test_ibm_xiv_ds8k.py:102
 #, python-format
 msgid "Volume not found for instance %(instance_id)s."
-msgstr ""
+msgstr "Datenträger für Instanz %(instance_id)s nicht gefunden."
 
 #: cinder/tests/test_misc.py:58
 #, python-format
@@ -3887,6 +4070,8 @@ msgid ""
 "The following migrations are missing a downgrade:\n"
 "\t%s"
 msgstr ""
+"Bei folgenden Migrationen fehlt eine Herabstufung:\n"
+"\t%s"
 
 #: cinder/tests/test_netapp.py:1327
 msgid "Error not a TypeError."
@@ -3901,49 +4086,55 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
 #: cinder/tests/test_storwize_svc.py:252
 #, python-format
 msgid "unrecognized argument %s"
-msgstr ""
+msgstr "Nicht erkanntes Argument %s"
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
-msgstr ""
+msgstr "CLI-Befehl ausführen: %s"
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
 " stdout: %(stdout)s\n"
 " stderr: %(stderr)s"
 msgstr ""
+"CLI-Ausgabe:\n"
+" Standardausgabe: %(stdout)s\n"
+" Standardfehler: %(stderr)s"
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
 " stdout: %(out)s\n"
 " stderr: %(err)s"
 msgstr ""
+"Ausgabe bei CLI-Ausnahme:\n"
+" Standardausgabe: %(out)s\n"
+" Standardfehler: %(err)s"
 
 #: cinder/tests/test_volume_types.py:60
 #, python-format
 msgid "Given data: %s"
-msgstr ""
+msgstr "Vorgegebene Daten: %s"
 
 #: cinder/tests/test_volume_types.py:61
 #, python-format
 msgid "Result data: %s"
-msgstr ""
+msgstr "Ergebnisdaten: %s"
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
-msgstr ""
+msgstr "Ungültige Eingabe"
 
 #: cinder/tests/brick/test_brick_remotefs.py:99
 msgid "Unexpected call to _execute."
@@ -3954,9 +4145,9 @@ msgid "mount failed."
 msgstr ""
 
 #: cinder/tests/integrated/test_login.py:29
-#, fuzzy, python-format
+#, python-format
 msgid "volume: %s"
-msgstr "Volume %s: wird entfernt"
+msgstr "Datenträger: %s"
 
 #: cinder/tests/integrated/api/client.py:34
 #, python-format
@@ -3965,47 +4156,50 @@ msgid ""
 "Status Code: %(_status)s\n"
 "Body: %(_body)s"
 msgstr ""
+"%(message)s\n"
+"Statuscode: %(_status)s\n"
+"Nachrichtentext: %(_body)s"
 
 #: cinder/tests/integrated/api/client.py:44
 msgid "Authentication error"
-msgstr ""
+msgstr "Authentifizierungsfehler"
 
 #: cinder/tests/integrated/api/client.py:52
 msgid "Authorization error"
-msgstr ""
+msgstr "Autorisierungsfehler"
 
 #: cinder/tests/integrated/api/client.py:60
 msgid "Item not found"
-msgstr ""
+msgstr "Element nicht gefunden"
 
 #: cinder/tests/integrated/api/client.py:97
 #, python-format
 msgid "Doing %(method)s on %(relative_url)s"
-msgstr ""
+msgstr "Durchführung von %(method)s auf %(relative_url)s"
 
 #: cinder/tests/integrated/api/client.py:100
 #, python-format
 msgid "Body: %s"
-msgstr ""
+msgstr "Nachrichtentext: %s"
 
 #: cinder/tests/integrated/api/client.py:124
 #, python-format
 msgid "%(auth_uri)s => code %(http_status)s"
-msgstr ""
+msgstr "%(auth_uri)s => Code %(http_status)s"
 
 #: cinder/tests/integrated/api/client.py:147
 #, python-format
 msgid "%(relative_uri)s => code %(http_status)s"
-msgstr ""
+msgstr "%(relative_uri)s => Code %(http_status)s"
 
 #: cinder/tests/integrated/api/client.py:158
 msgid "Unexpected status code"
-msgstr ""
+msgstr "Unerwarteter Statuscode"
 
 #: cinder/tests/integrated/api/client.py:165
 #, python-format
 msgid "Decoding JSON: %s"
-msgstr ""
+msgstr "Decodierung von JSON: %s"
 
 #: cinder/tests/zonemanager/test_brcd_fc_zone_driver.py:124
 #, python-format
@@ -4043,12 +4237,12 @@ msgstr ""
 
 #: cinder/transfer/api.py:102 cinder/volume/api.py:350
 msgid "status must be available"
-msgstr ""
+msgstr "Status muss 'available' sein"
 
 #: cinder/transfer/api.py:119
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to create transfer record for %s"
-msgstr "Nicht möglich volume %s zufinden"
+msgstr ""
 
 #: cinder/transfer/api.py:136
 #, python-format
@@ -4061,6 +4255,8 @@ msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG volume "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
+"Quote für %(s_pid)s überschritten. Versuch, %(s_size)sG-Datenträger zu "
+"erstellen (%(d_consumed)dG von %(d_quota)dG bereits verbraucht)"
 
 #: cinder/transfer/api.py:182
 #, python-format
@@ -4095,7 +4291,7 @@ msgstr ""
 
 #: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
-msgstr ""
+msgstr "Fehler beim Aktualisieren von Quote zum Löschen von Datenträger"
 
 #: cinder/volume/api.py:228
 #, python-format
@@ -4109,17 +4305,17 @@ msgstr ""
 #: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
-msgstr ""
+msgstr "Datenträger weist noch %d abhängige Momentaufnahmen auf"
 
 #: cinder/volume/api.py:293 cinder/volume/api.py:333
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
-msgstr ""
+msgstr "Suche nach: %s"
 
 #: cinder/volume/api.py:353
 msgid "already attached"
-msgstr ""
+msgstr "bereits angehängt"
 
 #: cinder/volume/api.py:360
 msgid "status must be in-use to detach"
@@ -4127,7 +4323,7 @@ msgstr ""
 
 #: cinder/volume/api.py:371
 msgid "Volume status must be available to reserve"
-msgstr ""
+msgstr "Datenträgerstatus muss zum Reservieren 'available' sein"
 
 #: cinder/volume/api.py:447
 msgid "Snapshot cannot be created while volume is migrating"
@@ -4135,7 +4331,7 @@ msgstr ""
 
 #: cinder/volume/api.py:451
 msgid "must be available"
-msgstr ""
+msgstr "muss verfügbar sein"
 
 #: cinder/volume/api.py:473
 #, python-format
@@ -4143,6 +4339,8 @@ msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
+"Quote für %(s_pid)s überschritten. Versuch, %(s_size)sG-Momentaufnahme zu"
+" erstellen (%(d_consumed)dG von %(d_quota)dG bereits verbraucht)"
 
 #: cinder/volume/api.py:485
 #, python-format
@@ -4150,30 +4348,32 @@ msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
+"Quote für %(s_pid)s überschritten. Versuch, Momentaufnahme zu erstellen "
+"(%(d_consumed)d Momentaufnahmen bereits verbraucht)"
 
 #: cinder/volume/api.py:536
 msgid "Volume Snapshot status must be available or error"
-msgstr ""
+msgstr "Status von Datenträgermomentaufnahme muss 'available' oder 'error' lauten"
 
 #: cinder/volume/api.py:564 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
-msgstr ""
+msgstr "Metadateneigenschaftenschlüssel leer"
 
 #: cinder/volume/api.py:568
 msgid "Metadata property key greater than 255 characters"
-msgstr ""
+msgstr "Metadateneigenschaftenschlüssel größer als 255 Zeichen"
 
 #: cinder/volume/api.py:572
 msgid "Metadata property value greater than 255 characters"
-msgstr ""
+msgstr "Metadateneigenschaftenwert größer als 255 Zeichen"
 
 #: cinder/volume/api.py:703 cinder/volume/api.py:777
 msgid "Volume status must be available/in-use."
-msgstr ""
+msgstr "Datenträgerstatus muss 'available'/'in-use' sein."
 
 #: cinder/volume/api.py:706
 msgid "Volume status is in-use."
-msgstr ""
+msgstr "Datenträgerstatus ist 'in-use'."
 
 #: cinder/volume/api.py:735
 msgid "Volume status must be available to extend."
@@ -4201,73 +4401,73 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
 #: cinder/volume/driver.py:195 cinder/volume/drivers/netapp/nfs.py:176
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
-msgstr ""
+msgstr "Wiederherstellen nach fehlgeschlagener Ausführung. Anzahl Versuche: %s"
 
 #: cinder/volume/driver.py:278
 #, python-format
@@ -4287,27 +4487,27 @@ msgstr ""
 #: cinder/volume/driver.py:335
 #, python-format
 msgid "copy_image_to_volume %s."
-msgstr ""
+msgstr "copy_image_to_volume %s."
 
 #: cinder/volume/driver.py:352
 #, python-format
 msgid "copy_volume_to_image %s."
-msgstr ""
+msgstr "copy_volume_to_image %s."
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4322,18 +4522,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr "Volume %s: entferne Export"
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4356,9 +4556,9 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
-msgstr ""
+msgstr "'provider_location' für iSCSI nicht gespeichert, Erkennung wird verwendet"
 
 #: cinder/volume/driver.py:652
 #, python-format
@@ -4371,27 +4571,27 @@ msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
 #: cinder/volume/driver.py:701
-#, fuzzy, python-format
+#, python-format
 msgid "Could not find iSCSI export for volume %s"
-msgstr "Nicht möglich volume %s zufinden"
+msgstr "iSCSI-Export nicht gefunden für Datenträger %s"
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
-msgstr ""
+msgstr "iSCSI-Erkennung: %s gefunden"
 
 #: cinder/volume/driver.py:802
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4399,8 +4599,15 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
+msgstr "Treiber muss initialize_connection implementieren"
+
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
 msgstr ""
 
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
@@ -4408,6 +4615,8 @@ msgstr ""
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
+"'remove_export' wird übersprungen. Kein 'iscsi_target' bereitgestellt für"
+" Datenträger: %s"
 
 #: cinder/volume/iscsi.py:80
 #, python-format
@@ -4415,21 +4624,23 @@ msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
+"'remove_export' wird übersprungen. Aktuell ist kein 'iscsi_target' "
+"exportiert für Datenträger: %s"
 
 #: cinder/volume/iscsi.py:100
 msgid "Detected inconsistency in provider_location id"
-msgstr ""
+msgstr "Inkonsistenz in provider_location-ID erkannt"
 
 #: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:572
 #: cinder/volume/drivers/huawei/rest_common.py:1225
 #, python-format
 msgid "%s"
-msgstr ""
+msgstr "%s"
 
 #: cinder/volume/iscsi.py:184
 #, python-format
 msgid "Symbolic link %s not found"
-msgstr ""
+msgstr "Symbolischer Link %s nicht gefunden"
 
 #: cinder/volume/iscsi.py:251
 #, python-format
@@ -4440,286 +4651,286 @@ msgstr ""
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
+"ensure_export wird übersprungen. Keine iscsi_target-Bestimmung für "
+"Datenträger: %s"
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
+"Treiberpfad %s ist veraltet. Aktualisieren Sie Konfiguration auf den "
+"neuen Pfad."
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
-msgstr ""
+msgstr "%s Datenträger werden erneut exportiert"
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
-msgstr ""
+msgstr "Datenträger %s: Export wird übersprungen"
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
-msgstr ""
+msgstr "Wiederaufnahme aller in Bearbeitung befindlichen Löschvorgänge"
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
-msgstr ""
+msgstr "Fortsetzen von Löschen auf Datenträger: %s"
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr "Volume %s: wird entfernt"
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
-msgstr ""
+msgstr "Datenträger ist nicht lokal auf diesem Knoten"
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
-msgstr ""
+msgstr "Nutzungen konnten nicht durch Löschen von Datenträger aktualisiert werden."
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr "Volume %s: erfolgreich entfernt"
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
-msgstr ""
+msgstr "Momentaufnahme %s: Erstellung läuft"
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
-msgstr ""
+msgstr "Momentaufnahme %s: erfolgreich erstellt"
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
-msgstr ""
+msgstr "Momentaufnahme %s: wird gelöscht"
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
+"Nutzungen konnten nicht durch Löschen von Momentaufnahme aktualisiert "
+"werden."
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
-msgstr ""
+msgstr "Momentaufnahme %s: erfolgreich gelöscht"
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
-msgstr ""
+msgstr "Wird von anderer Instanz angehängt"
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
-msgstr ""
+msgstr "Datenträger %(volume_id)s erfolgreich auf Image (%(image_id)s) hochgeladen"
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
-msgstr ""
+msgstr "Aktualisierung von Datenträgerstatus"
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
-msgstr ""
+msgstr "Benachrichtigung {%s} erhalten"
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4735,13 +4946,13 @@ msgstr ""
 #: cinder/volume/volume_types.py:43
 #, python-format
 msgid "DB error: %s"
-msgstr ""
+msgstr "Datenbankfehler: %s"
 
 #: cinder/volume/qos_specs.py:123 cinder/volume/qos_specs.py:140
 #: cinder/volume/qos_specs.py:272 cinder/volume/volume_types.py:52
 #: cinder/volume/volume_types.py:99
 msgid "id cannot be None"
-msgstr ""
+msgstr "ID darf nicht 'None' sein"
 
 #: cinder/volume/qos_specs.py:156
 #, python-format
@@ -4772,19 +4983,19 @@ msgstr ""
 
 #: cinder/volume/qos_specs.py:284 cinder/volume/volume_types.py:111
 msgid "name cannot be None"
-msgstr ""
+msgstr "Name darf nicht 'None' sein"
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
-msgstr ""
+msgstr "Ausführen von sicherem Löschvorgang auf Datenträger: %s"
 
 #: cinder/volume/volume_types.py:130
 #, python-format
@@ -4792,12 +5003,14 @@ msgid ""
 "Default volume type is not found, please check default_volume_type "
 "config: %s"
 msgstr ""
+"Standarddatenträgertyp nicht gefunden. Überprüfen Sie die "
+"default_volume_type-Konfiguration: %s"
 
 #: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:284
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
-msgstr ""
+msgstr "Erstellung von Klon von Datenträger: %s"
 
 #: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
@@ -4907,11 +5120,11 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
-#, fuzzy, python-format
+#, python-format
 msgid "Error running SSH command: %s"
-msgstr "Unerwarteter Fehler bei Ausführung des Kommandos."
+msgstr "Fehler beim Ausführen von SSH-Befehl: %s"
 
 #: cinder/volume/drivers/eqlx.py:282
 #, python-format
@@ -4987,219 +5200,221 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
-msgstr ""
+msgstr "Keine Gluster-Konfigurationsdatei konfiguriert (%s)"
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
-msgstr ""
+msgstr "Gluster-Konfigurationsdatei unter %(config)s ist nicht vorhanden"
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
-msgstr ""
+msgstr "mount.glusterfs ist nicht installiert"
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
-msgstr ""
+msgstr "Cast auf %s"
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
+"Bei Datenträger %s ist provider_location nicht angegeben, wird "
+"übersprungen"
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
-msgstr ""
+msgstr "Ausnahme beim Anhängen von %s"
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5221,7 +5436,7 @@ msgstr ""
 #: cinder/volume/drivers/lvm.py:246
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
-msgstr ""
+msgstr "Momentaufnahme: %s nicht gefunden, Löschvorgänge werden übersprungen"
 
 #: cinder/volume/drivers/lvm.py:347
 #, python-format
@@ -5266,17 +5481,17 @@ msgstr ""
 #: cinder/volume/drivers/nfs.py:380
 #, python-format
 msgid "%s is already mounted"
-msgstr ""
+msgstr "%s ist bereits angehängt"
 
 #: cinder/volume/drivers/nfs.py:432
 #, python-format
 msgid "There's no NFS config file configured (%s)"
-msgstr ""
+msgstr "Keine NFS-Konfigurationsdatei konfiguriert (%s)"
 
 #: cinder/volume/drivers/nfs.py:437
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
-msgstr ""
+msgstr "NFS-Konfigurationsdatei unter %(config)s ist nicht vorhanden"
 
 #: cinder/volume/drivers/nfs.py:442
 #, python-format
@@ -5308,174 +5523,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
-msgstr ""
+msgstr "Fehler beim Aktualisieren von Datenträgerstatistiken"
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
-msgstr ""
+msgstr "Nicht in RBD gespeichert"
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
-msgstr ""
+msgstr "Leere Komponenten"
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
-msgstr ""
+msgstr "Keine RBD-Momentaufnahme"
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
-msgstr ""
+msgstr "%s befindet sich in einem anderen Ceph-Cluster"
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:754
+#, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
-msgstr "Nicht möglich volume %s zufinden"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5483,39 +5698,41 @@ msgstr ""
 
 #: cinder/volume/drivers/scality.py:67
 msgid "Value required for 'scality_sofs_config'"
-msgstr ""
+msgstr "Wert für 'scality_sofs_config' erforderlich"
 
 #: cinder/volume/drivers/scality.py:78
 #, python-format
 msgid "Cannot access 'scality_sofs_config': %s"
-msgstr ""
+msgstr "Zugriff auf 'scality_sofs_config' nicht möglich: %s"
 
 #: cinder/volume/drivers/scality.py:84
 msgid "Cannot execute /sbin/mount.sofs"
-msgstr ""
+msgstr "Ausführen von /sbin/mount.sofs nicht möglich"
 
 #: cinder/volume/drivers/scality.py:105
 msgid "Cannot mount Scality SOFS, check syslog for errors"
-msgstr ""
+msgstr "Scality-SoFS kann nicht angehängt werden. Syslog auf Fehler überprüfen"
 
 #: cinder/volume/drivers/scality.py:139
 #, python-format
 msgid "Cannot find volume dir for Scality SOFS at '%s'"
 msgstr ""
+"Datenträgerverzeichnis für Scality-SoFS kann unter '%s' nicht gefunden "
+"werden"
 
 #: cinder/volume/drivers/sheepdog.py:59
 #, python-format
 msgid "Sheepdog is not working: %s"
-msgstr ""
+msgstr "SheepDog arbeitet nicht: %s"
 
 #: cinder/volume/drivers/sheepdog.py:64
 msgid "Sheepdog is not working"
-msgstr ""
+msgstr "SheepDog arbeitet nicht"
 
 #: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
-msgstr ""
+msgstr "Nutzdaten für SolidFire-API-Aufruf: %s"
 
 #: cinder/volume/drivers/solidfire.py:149
 #, python-format
@@ -5544,53 +5761,57 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
-msgstr ""
+msgstr "Aufruf an json.loads() hat eine Ausnahme ausgelöst: %s"
 
 #: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
-msgstr ""
+msgstr "Ergebnisse von SolidFire-API-Aufruf: %s"
 
 #: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
-msgstr ""
+msgstr "Vorkommen von Klonvorgang: %s"
 
 #: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
+"Warten auf ausstehende Operation, bevor Momentaufnahme erneut versucht "
+"wird: %s"
 
 #: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
-msgstr ""
+msgstr "xDBVersionMismatch erkannt, Neuversuch %s von 5"
 
 #: 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 ""
+msgstr "API-Antwort: %s"
 
 #: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
-msgstr ""
+msgstr "SolidFire-Konto gefunden: %s"
 
 #: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
-msgstr ""
+msgstr "SolidFire-Konto: %s ist nicht vorhanden; Erstellung..."
 
 #: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
+"Fehler beim Abrufen von SolidFire-ID von Datenträger: %s in "
+"get_by_account!"
 
 #: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
-msgstr ""
+msgstr "Fehler beim Abrufen von Modellaktualisierung von Klon"
 
 #: cinder/volume/drivers/solidfire.py:408
 #, python-format
@@ -5600,7 +5821,7 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
-msgstr ""
+msgstr "Mehrere gültige Voreinstellungen gefunden, Verwendung von %s"
 
 #: cinder/volume/drivers/solidfire.py:458
 #, python-format
@@ -5610,26 +5831,26 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
-msgstr ""
+msgstr "SolidFire-Datenträger-ID %(sfid)s Cinder-ID %(uuid)s zugeordnet."
 
 #: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
-msgstr ""
+msgstr "Datenträger %s nicht auf SF-Cluster gefunden."
 
 #: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
-msgstr ""
+msgstr "%(count)s der ID %(uuid)s zugeordnete Datenträger gefunden."
 
 #: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
-msgstr ""
+msgstr "Eingabe von 'delete_volume' von SolidFire..."
 
 #: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
-msgstr ""
+msgstr "Konto für Datenträger-ID %s nicht auf SolidFire-Cluster gefunden!"
 
 #: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
@@ -5642,23 +5863,23 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
-msgstr ""
+msgstr "Datenträger-ID %s nicht auf SolidFire-Cluster gefunden!"
 
 #: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
-msgstr ""
+msgstr "Verlassen von 'delete_volume' von SolidFire"
 
 #: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
-msgstr ""
+msgstr "Ausführen von 'ensure_export' von SolidFire..."
 
 #: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
-msgstr ""
+msgstr "Ausführen von 'create_export' von SolidFire..."
 
 #: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
@@ -5670,30 +5891,30 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
-msgstr ""
+msgstr "Aktualisierung von Statusinformationen zu Cluster"
 
 #: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
-msgstr ""
+msgstr "Fehler beim Abrufen von aktualisierten Statistiken"
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
 #: cinder/volume/drivers/zadara.py:236
 #, python-format
 msgid "Sending %(method)s to %(url)s. Body \"%(body)s\""
-msgstr ""
+msgstr "Senden von %(method)s an %(url)s. Text \"%(body)s\""
 
 #: cinder/volume/drivers/zadara.py:260
 #, python-format
 msgid "Operation completed. %(data)s"
-msgstr ""
+msgstr "Operation abgeschlossen. %(data)s"
 
 #: cinder/volume/drivers/zadara.py:357
 #, python-format
@@ -5704,6 +5925,8 @@ msgstr ""
 #, python-format
 msgid "Volume %(name)s could not be found. It might be already deleted"
 msgstr ""
+"Datenträger %(name)s konnte nicht gefunden werden. Möglicherweise ist er "
+"bereits gelöscht."
 
 #: cinder/volume/drivers/zadara.py:438
 #, python-format
@@ -5744,7 +5967,7 @@ msgstr ""
 #: cinder/volume/drivers/zadara.py:614
 #, python-format
 msgid "Attach properties: %(properties)s"
-msgstr ""
+msgstr "Eigenschaften anhängen: %(properties)s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:125
 #, python-format
@@ -5752,22 +5975,22 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
-msgstr ""
+msgstr "iSCSI-Export nicht gefunden für Datenträger %s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
-#, fuzzy, python-format
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
+#, python-format
 msgid "Cannot find device number for volume %s"
-msgstr "Nicht möglich volume %s zufinden"
+msgstr "Einheitennummer für Datenträger %s kann nicht gefunden werden"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
-msgstr ""
+msgstr "iSCSI-Endpunkt gefunden: %s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:209
 #, python-format
@@ -5784,21 +6007,23 @@ msgid ""
 "Module PyWBEM not installed.  Install PyWBEM using the python-pywbem "
 "package."
 msgstr ""
+"Modul PyWBEM nicht installiert. Installieren Sie PyWBEM mithilfe des "
+"python-pywbem-Pakets."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:82
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:125
 msgid "Entering create_volume."
-msgstr ""
+msgstr "Eingabe von create_volume."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:86
 #, python-format
 msgid "Create Volume: %(volume)s  Size: %(size)lu"
-msgstr ""
+msgstr "Datenträger erstellen: %(volume)s  Größe: %(size)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:94
 #, python-format
 msgid "Create Volume: %(volume)s  Storage type: %(storage_type)s"
-msgstr ""
+msgstr "Datenträger erstellen: %(volume)s  Speichertyp: %(storage_type)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:101
 #, python-format
@@ -5806,6 +6031,8 @@ msgid ""
 "Create Volume: %(volume)s  Pool: %(pool)s  Storage System: "
 "%(storage_system)s"
 msgstr ""
+"Datenträger erstellen: %(volume)s  Pool: %(pool)s  Speichersystem: "
+"%(storage_system)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:110
 #, python-format
@@ -5813,6 +6040,9 @@ msgid ""
 "Error Create Volume: %(volumename)s. Storage Configuration Service not "
 "found for pool %(storage_type)s."
 msgstr ""
+"Fehler bei Erstellen von Datenträger: %(volumename)s. "
+"Speicherkonfigurationsservice für %(storage_type)s von Pool nicht "
+"gefunden."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:120
 #, python-format
@@ -5825,7 +6055,7 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_smis_common.py:136
 #, python-format
 msgid "Create Volume: %(volumename)s  Return code: %(rc)lu"
-msgstr ""
+msgstr "Datenträger erstellen: %(volumename)s  Rückgabecode: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:143
 #, python-format
@@ -5833,6 +6063,8 @@ msgid ""
 "Error Create Volume: %(volumename)s.  Return code: %(rc)lu.  Error: "
 "%(error)s"
 msgstr ""
+"Fehler bei Erstellen von Datenträger: %(volumename)s.  Rückgabecode: "
+"%(rc)lu.  Fehler: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:164
 #, python-format
@@ -5844,7 +6076,7 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_smis_common.py:176
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:348
 msgid "Entering create_volume_from_snapshot."
-msgstr ""
+msgstr "Eingabe von create_volume_from_snapshot."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:181
 #, python-format
@@ -5852,6 +6084,8 @@ msgid ""
 "Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s"
 msgstr ""
+"Datenträger von Momentaufnahme erstellen: Datenträger: %(volumename)s  "
+"Momentaufnahme: %(snapshotname)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:191
 #, python-format
@@ -5860,6 +6094,9 @@ msgid ""
 "%(snapshotname)s  Snapshot Instance: %(snapshotinstance)s  Storage "
 "System: %(storage_system)s."
 msgstr ""
+"Datenträger von Momentaufnahme erstellen: Datenträger: %(volumename)s  "
+"Momentaufnahme: %(snapshotname)s  Momentaufnahmeninstanz: "
+"%(snapshotinstance)s  Speichersystem: %(storage_system)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:201
 #, python-format
@@ -5867,6 +6104,9 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s. Create Volume from Snapshot is NOT supported on VMAX."
 msgstr ""
+"Fehler bei Erstellen von Datenträger von Momentaufnahme: Datenträger: "
+"%(volumename)s  Momentaufnahme: %(snapshotname)s. Erstellen von "
+"Datenträger von Momentaufnahme  wird auf VMAX NICHT unterstützt"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:212
 #, python-format
@@ -5875,6 +6115,10 @@ msgid ""
 "%(snapshotname)s. Cannot find Replication Service to create volume from "
 "snapshot."
 msgstr ""
+"Fehler bei Erstellen von Datenträger von Momentaufnahme: Datenträger: "
+"%(volumename)s  Momentaufnahme: %(snapshotname)s. Replizierungsservice "
+"zum Erstellen von Datenträger von Momentaufnahme kann nicht gefunden "
+"werden"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:221
 #, python-format
@@ -5884,6 +6128,10 @@ msgid ""
 "%(service)s  ElementName: %(elementname)s  SyncType: 8  SourceElement: "
 "%(sourceelement)s"
 msgstr ""
+"Datenträger von Momentaufnahme erstellen: Datenträger: %(volumename)s  "
+"Momentaufnahme: %(snapshotname)s  Methode: CreateElementReplica  "
+"ReplicationService: %(service)s  ElementName: %(elementname)s  SyncType: "
+"8  SourceElement: %(sourceelement)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:242
 #, python-format
@@ -5891,6 +6139,9 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  "
 "Snapshot:%(snapshotname)s.  Return code: %(rc)lu.Error: %(error)s"
 msgstr ""
+"Fehler bei Erstellen von Datenträger von Momentaufnahme: Datenträger: "
+"%(volumename)s  Momentaufnahme:%(snapshotname)s.  Rückgabecode: %(rc)lu."
+"  Fehler: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:268
 #, python-format
@@ -5899,6 +6150,9 @@ msgid ""
 "%(snapshotname)s.  Successfully clone volume from snapshot.  Finding the "
 "clone relationship."
 msgstr ""
+"Datenträger von Momentaufnahme erstellen: Datenträger: %(volumename)s  "
+"Momentaufnahme: %(snapshotname)s.  Datenträger erfolgreich von "
+"Momentaufnahme geklont.  Suche nach Klonbeziehung."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:280
 #, python-format
@@ -5908,6 +6162,10 @@ msgid ""
 "ModifyReplicaSynchronization ReplicationService: %(service)s  Operation: "
 "8  Synchronization: %(sync_name)s"
 msgstr ""
+"Datenträger von Momentaufnahme erstellen: Datenträger: %(volumename)s  "
+"Momentaufnahme: %(snapshotname)s.  Klonbeziehung entfernen. Methode: "
+"ModifyReplicaSynchronization ReplicationService: %(service)s  Operation: "
+"8  Synchronisation: %(sync_name)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:296
 #, python-format
@@ -5915,6 +6173,8 @@ msgid ""
 "Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu"
 msgstr ""
+"Datenträger von Momentaufnahme erstellen: Datenträger: %(volumename)s  "
+"Momentaufnahme: %(snapshotname)s  Rückgabecode: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:305
 #, python-format
@@ -5922,6 +6182,9 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s.  Return code: %(rc)lu.  Error: %(error)s"
 msgstr ""
+"Fehler bei Erstellen von Datenträger von Momentaufnahme: Datenträger: "
+"%(volumename)s  Momentaufnahme:%(snapshotname)s.  Rückgabecode: %(rc)lu."
+"  Fehler: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:317
 #, python-format
@@ -5929,10 +6192,12 @@ msgid ""
 "Leaving create_volume_from_snapshot: Volume: %(volumename)s Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu."
 msgstr ""
+"Belassen von create_volume_from_snapshot: Datenträger: %(volumename)s "
+"Momentaufnahme: %(snapshotname)s  Rückgabecode: %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:328
 msgid "Entering create_cloned_volume."
-msgstr ""
+msgstr "Eingabe von create_cloned_volume."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:333
 #, python-format
@@ -5940,6 +6205,8 @@ msgid ""
 "Create a Clone from Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s"
 msgstr ""
+"Klon von Datenträger erstellen: Datenträger: %(volumename)s  "
+"Quellendatenträger: %(srcname)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:343
 #, python-format
@@ -5947,6 +6214,9 @@ msgid ""
 "Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
 "  Source Instance: %(src_instance)s  Storage System: %(storage_system)s."
 msgstr ""
+"Geklonten Datenträger erstellen: Datenträger: %(volumename)s  "
+"Quellendatenträger: %(srcname)s  Quelleninstanz: %(src_instance)s  "
+"Speichersystem: %(storage_system)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:353
 #, python-format
@@ -5954,6 +6224,9 @@ msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s. Cannot find Replication Service to create cloned volume."
 msgstr ""
+"Fehler bei Erstellen von geklontem Datenträger: Datenträger: "
+"%(volumename)s  Quellendatenträger: %(srcname)s. Replizierungsservice zum"
+" Erstellen von geklontem Datenträger kann nicht gefunden werden."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:362
 #, python-format
@@ -5963,6 +6236,10 @@ msgid ""
 "ElementName: %(elementname)s  SyncType: 8  SourceElement: "
 "%(sourceelement)s"
 msgstr ""
+"Geklonten Datenträger erstellen: Datenträger: %(volumename)s  "
+"Quellendatenträger: %(srcname)s  Methode: CreateElementReplica  "
+"ReplicationService: %(service)s  ElementName: %(elementname)s  SyncType: "
+"8  SourceElement: %(sourceelement)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:383
 #, python-format
@@ -5970,6 +6247,9 @@ msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source "
 "Volume:%(srcname)s.  Return code: %(rc)lu.Error: %(error)s"
 msgstr ""
+"Fehler bei Erstellen von geklontem Datenträger: Datenträger: "
+"%(volumename)s  Quellendatenträger: %(srcname)s.  Rückgabecode: %(rc)lu."
+"  Fehler: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:409
 #, python-format
@@ -5978,6 +6258,9 @@ msgid ""
 "  Successfully cloned volume from source volume.  Finding the clone "
 "relationship."
 msgstr ""
+"Geklonten Datenträger erstellen: Datenträger: %(volumename)s  "
+"Quellendatenträger: %(srcname)s.  Datenträger erfolgreich von "
+"Quellendatenträger geklont.  Suche nach Klonbeziehung."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:421
 #, python-format
@@ -5987,6 +6270,10 @@ msgid ""
 "ReplicationService: %(service)s  Operation: 8  Synchronization: "
 "%(sync_name)s"
 msgstr ""
+"Geklonten Datenträger erstellen: Datenträger: %(volumename)s  "
+"Quellendatenträger: %(srcname)s.  Klonbeziehung entfernen. Methode: "
+"ModifyReplicaSynchronization  ReplicationService: %(service)s  Operation:"
+" 8  Synchronisation: %(sync_name)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:437
 #, python-format
@@ -5994,6 +6281,8 @@ msgid ""
 "Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
 "  Return code: %(rc)lu"
 msgstr ""
+"Geklonten Datenträger erstellen: Datenträger: %(volumename)s  "
+"Quellendatenträger: %(srcname)s  Rückgabecode: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:446
 #, python-format
@@ -6001,6 +6290,9 @@ msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s.  Return code: %(rc)lu.  Error: %(error)s"
 msgstr ""
+"Fehler bei Erstellen von geklontem Datenträger: Datenträger: "
+"%(volumename)s  Quellendatenträger: %(srcname)s.  Rückgabecode: %(rc)lu."
+"  Fehler: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:458
 #, python-format
@@ -6008,21 +6300,25 @@ msgid ""
 "Leaving create_cloned_volume: Volume: %(volumename)s Source Volume: "
 "%(srcname)s  Return code: %(rc)lu."
 msgstr ""
+"Belassen von create_cloned_volume: Datenträger: %(volumename)s "
+"Quellendatenträger: %(srcname)s  Rückgabecode: %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:469
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:178
 msgid "Entering delete_volume."
-msgstr ""
+msgstr "Eingabe von delete_volume."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:471
 #, python-format
 msgid "Delete Volume: %(volume)s"
-msgstr ""
+msgstr "Datenträger löschen: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:478
 #, python-format
 msgid "Volume %(name)s not found on the array. No volume to delete."
 msgstr ""
+"Datenträger %(name)s nicht auf Platteneinheit gefunden. Kein Datenträger "
+"zu löschen."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:488
 #, python-format
@@ -6030,11 +6326,13 @@ msgid ""
 "Error Delete Volume: %(volumename)s. Storage Configuration Service not "
 "found."
 msgstr ""
+"Fehler bei Löschen von Datenträger: %(volumename)s. "
+"Speicherkonfigurationsservice nicht gefunden."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:496
 #, python-format
 msgid "Delete Volume: %(name)s  DeviceID: %(deviceid)s"
-msgstr ""
+msgstr "Datenträger löschen: %(name)s  Einheiten-ID: %(deviceid)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:500
 #, python-format
@@ -6042,6 +6340,8 @@ msgid ""
 "Delete Volume: %(name)s  Method: EMCReturnToStoragePool ConfigServic: "
 "%(service)s  TheElement: %(vol_instance)s"
 msgstr ""
+"Datenträger löschen: %(name)s  Methode: EMCReturnToStoragePool "
+"ConfigServic: %(service)s  TheElement: %(vol_instance)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:514
 #, python-format
@@ -6049,28 +6349,30 @@ msgid ""
 "Error Delete Volume: %(volumename)s.  Return code: %(rc)lu.  Error: "
 "%(error)s"
 msgstr ""
+"Fehler bei Löschen von Datenträger: %(volumename)s.  Rückgabecode: "
+"%(rc)lu.  Fehler: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:523
 #, python-format
 msgid "Leaving delete_volume: %(volumename)s  Return code: %(rc)lu"
-msgstr ""
+msgstr "Belassen von delete_volume: %(volumename)s  Rückgabecode: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:530
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:275
 msgid "Entering create_snapshot."
-msgstr ""
+msgstr "Eingabe von create_snapshot."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:534
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:278
 #, python-format
 msgid "Create snapshot: %(snapshot)s: volume: %(volume)s"
-msgstr ""
+msgstr "Momentaufnahme erstellen: %(snapshot)s: Datenträger: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:544
 #: cinder/volume/drivers/emc/emc_smis_common.py:972
 #, python-format
 msgid "Device ID: %(deviceid)s: Storage System: %(storagesystem)s"
-msgstr ""
+msgstr "Einheiten-ID: %(deviceid)s: Speichersystem: %(storagesystem)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:551
 #: cinder/volume/drivers/emc/emc_smis_common.py:553
@@ -6078,6 +6380,8 @@ msgstr ""
 #, python-format
 msgid "Cannot find Replication Service to create snapshot for volume %s."
 msgstr ""
+"Replizierungsservice zum Erstellen von Momentaufnahme für Datenträger %s "
+"kann nicht gefunden werden."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:558
 #, python-format
@@ -6086,6 +6390,10 @@ msgid ""
 "Source: %(volume)s  Replication Service: %(service)s  ElementName: "
 "%(elementname)s  Sync Type: 7  SourceElement: %(sourceelement)s."
 msgstr ""
+"Momentaufnahme erstellen:  Methode: CreateElementReplica: Ziel: "
+"%(snapshot)s  Quelle: %(volume)s  Replizierungsservice: %(service)s  "
+"ElementName: %(elementname)s  Synchronisationstyp: 7  SourceElement: "
+"%(sourceelement)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:574
 #, python-format
@@ -6093,6 +6401,8 @@ msgid ""
 "Create Snapshot: Volume: %(volumename)s  Snapshot: %(snapshotname)s  "
 "Return code: %(rc)lu"
 msgstr ""
+"Momentaufnahme erstellen: Datenträger: %(volumename)s  Momentaufnahme: "
+"%(snapshotname)s  Rückgabecode: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:583
 #, python-format
@@ -6107,17 +6417,19 @@ msgid ""
 "Leaving create_snapshot: Snapshot: %(snapshot)s Volume: %(volume)s  "
 "Return code: %(rc)lu."
 msgstr ""
+"Belassen von create_snapshot: Momentaufnahme: %(snapshot)s Datenträger: "
+"%(volume)s  Rückgabecode: %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:613
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:302
 msgid "Entering delete_snapshot."
-msgstr ""
+msgstr "Eingabe von delete_snapshot."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:617
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:306
 #, python-format
 msgid "Delete Snapshot: %(snapshot)s: volume: %(volume)s"
-msgstr ""
+msgstr "Momentaufnahme löschen: %(snapshot)s: Datenträger: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:623
 #, python-format
@@ -6125,6 +6437,8 @@ msgid ""
 "Delete Snapshot: %(snapshot)s: volume: %(volume)s. Finding "
 "StorageSychronization_SV_SV."
 msgstr ""
+"Momentaufnahme löschen: %(snapshot)s: Datenträger: %(volume)s. Suche nach"
+" StorageSychronization_SV_SV."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:631
 #, python-format
@@ -6132,6 +6446,8 @@ msgid ""
 "Snapshot: %(snapshot)s: volume: %(volume)s not found on the array. No "
 "snapshot to delete."
 msgstr ""
+"Momentaufnahme: %(snapshot)s: Datenträger: %(volume)s nicht auf "
+"Platteneinheit gefunden. Keine zu löschende Momentaufnahme."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:646
 #, python-format
@@ -6140,6 +6456,9 @@ msgid ""
 "ModifyReplicaSynchronization:  Replication Service: %(service)s  "
 "Operation: 19  Synchronization: %(sync_name)s."
 msgstr ""
+"Momentaufnahme löschen: Ziel: %(snapshot)s  Quelle: %(volume)s.  Methode:"
+" ModifyReplicaSynchronization:  Replizierungsservice: %(service)s  "
+"Operation: 19  Synchronisation: %(sync_name)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:662
 #, python-format
@@ -6147,6 +6466,8 @@ msgid ""
 "Delete Snapshot: Volume: %(volumename)s  Snapshot: %(snapshotname)s  "
 "Return code: %(rc)lu"
 msgstr ""
+"Momentaufnahme löschen: Datenträger: %(volumename)s  Momentaufnahme: "
+"%(snapshotname)s  Rückgabecode: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:671
 #, python-format
@@ -6154,6 +6475,9 @@ msgid ""
 "Error Delete Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s. Return code: %(rc)lu. Error: %(error)s"
 msgstr ""
+"Fehler bei Löschen von Momentaufnahme: Datenträger: %(volumename)s  "
+"Momentaufnahme:%(snapshotname)s.  Rückgabecode: %(rc)lu.  Fehler: "
+"%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:696
 #: cinder/volume/drivers/emc/emc_smis_common.py:711
@@ -6181,6 +6505,8 @@ msgid ""
 "Leaving delete_snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu."
 msgstr ""
+"Belassen von delete_snapshot: Datenträger: %(volumename)s Momentaufnahme:"
+" %(snapshotname)s  Rückgabecode: %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:745
 #, python-format
@@ -6188,21 +6514,23 @@ msgid ""
 "ExposePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(lun_name)s"
 "  InitiatorPortIDs: %(initiator)s  DeviceAccesses: 2"
 msgstr ""
+"ExposePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(lun_name)s"
+"  InitiatorPortIDs: %(initiator)s  DeviceAccesses: 2"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:760
 #, python-format
 msgid "ExposePaths parameter LunMaskingSCSIProtocolController: %(lunmasking)s"
-msgstr ""
+msgstr "ExposePaths-Parameter LunMaskingSCSIProtocolController: %(lunmasking)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:771
 #, python-format
 msgid "Error mapping volume %s."
-msgstr ""
+msgstr "Fehler bei Zuordnung von Datenträger %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:775
-#, fuzzy, python-format
+#, python-format
 msgid "ExposePaths for volume %s completed successfully."
-msgstr "Volume %s: erfolgreich entfernt"
+msgstr "ExposePaths für Datenträger %s erfolgreich ausgeführt."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:791
 #, python-format
@@ -6210,16 +6538,18 @@ msgid ""
 "HidePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(device_id)s  "
 "LunMaskingSCSIProtocolController: %(lunmasking)s"
 msgstr ""
+"HidePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(device_id)s  "
+"LunMaskingSCSIProtocolController: %(lunmasking)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:804
 #, python-format
 msgid "Error unmapping volume %s."
-msgstr ""
+msgstr "Fehler beim Aufheben der Zuordnung von Datenträger %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:808
-#, fuzzy, python-format
+#, python-format
 msgid "HidePaths for volume %s completed successfully."
-msgstr "Volume %s: erfolgreich entfernt"
+msgstr "HidePaths für Datenträger %s erfolgreich ausgeführt."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:821
 #, python-format
@@ -6227,16 +6557,18 @@ msgid ""
 "AddMembers: ConfigServicie: %(service)s  MaskingGroup: %(masking_group)s"
 "  Members: %(vol)s"
 msgstr ""
+"AddMembers: ConfigServicie: %(service)s  MaskingGroup: %(masking_group)s"
+"  Mitglieder: %(vol)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:836
 #, python-format
 msgid "Error mapping volume %(vol)s. %(error)s"
-msgstr ""
+msgstr "Fehler bei Zuordnung von Datenträger %(vol)s. %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:841
-#, fuzzy, python-format
+#, python-format
 msgid "AddMembers for volume %s completed successfully."
-msgstr "Volume %s: erfolgreich entfernt"
+msgstr "AddMembers für Datenträger %s erfolgreich ausgeführt."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:854
 #, python-format
@@ -6244,52 +6576,58 @@ msgid ""
 "RemoveMembers: ConfigServicie: %(service)s  MaskingGroup: "
 "%(masking_group)s  Members: %(vol)s"
 msgstr ""
+"RemoveMembers: ConfigServicie: %(service)s  MaskingGroup: "
+"%(masking_group)s  Mitglieder: %(vol)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:867
 #, python-format
 msgid "Error unmapping volume %(vol)s. %(error)s"
-msgstr ""
+msgstr "Fehler beim Aufheben der Zuordnung von Datenträger %(vol)s. %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:872
-#, fuzzy, python-format
+#, python-format
 msgid "RemoveMembers for volume %s completed successfully."
-msgstr "Volume %s: erfolgreich entfernt"
+msgstr "RemoveMembers für Datenträger %s erfolgreich ausgeführt."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:878
 #, python-format
 msgid "Map volume: %(volume)s"
-msgstr ""
+msgstr "Datenträger zuordnen: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:887
 #: cinder/volume/drivers/emc/emc_smis_common.py:917
 #, python-format
 msgid "Cannot find Controller Configuration Service for storage system %s"
 msgstr ""
+"Controllerkonfigurationsservice für Speichersystem %s kann nicht gefunden"
+" werden"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:901
 #, python-format
 msgid "Unmap volume: %(volume)s"
-msgstr ""
+msgstr "Zuordnung von Datenträger aufheben: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:907
 #, python-format
 msgid "Volume %s is not mapped. No volume to unmap."
 msgstr ""
+"Datenträger %s ist nicht zugeordnet. Kein Datenträger, dessen Zuordnung "
+"aufgehoben werden muss."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:931
 #, python-format
 msgid "Initialize connection: %(volume)s"
-msgstr ""
+msgstr "Verbindung initialisieren: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:937
 #, python-format
 msgid "Volume %s is already mapped."
-msgstr ""
+msgstr "Datenträger %s ist bereits zugeordnet."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:949
 #, python-format
 msgid "Terminate connection: %(volume)s"
-msgstr ""
+msgstr "Verbindung beenden: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:956
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:197
@@ -6345,16 +6683,16 @@ msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1063
 msgid "Storage type not found."
-msgstr ""
+msgstr "Speichertyp nicht gefunden."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1079
 #, python-format
 msgid "Found Masking View: %s"
-msgstr ""
+msgstr "Maskenansicht gefunden: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1082
 msgid "Masking View not found."
-msgstr ""
+msgstr "Maskenansicht nicht gefunden."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1097
 #, python-format
@@ -6367,75 +6705,75 @@ msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1122
 msgid "Ecom user not found."
-msgstr ""
+msgstr "ECOM-Benutzer nicht gefunden."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1142
 #, python-format
 msgid "Ecom IP: %(ecomIp)s Port: %(ecomPort)s"
-msgstr ""
+msgstr "ECOM-IP: %(ecomIp)s Port: %(ecomPort)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1146
 msgid "Ecom server not found."
-msgstr ""
+msgstr "ECOM-Server nicht gefunden."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1153
 msgid "Cannot connect to ECOM server"
-msgstr ""
+msgstr "Verbindung zu ECOM-Server kann nicht hergestellt werden"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1165
 #, python-format
 msgid "Found Replication Service: %s"
-msgstr ""
+msgstr "Replizierungsservice gefunden: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1178
 #, python-format
 msgid "Found Storage Configuration Service: %s"
-msgstr ""
+msgstr "Speicherkonfigurationsservice gefunden: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1191
 #, python-format
 msgid "Found Controller Configuration Service: %s"
-msgstr ""
+msgstr "Controllerkonfigurationsservice gefunden: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1204
 #, python-format
 msgid "Found Storage Hardware ID Management Service: %s"
-msgstr ""
+msgstr "ID-Management-Service für Speicherhardware gefunden: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1248
 #, python-format
 msgid "Pool %(storage_type)s is not found."
-msgstr ""
+msgstr "Pool %(storage_type)s wurde nicht gefunden."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1254
 #, python-format
 msgid "Storage system not found for pool %(storage_type)s."
-msgstr ""
+msgstr "Speichersystem für Pool %(storage_type)s nicht gefunden."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1260
 #, python-format
 msgid "Pool: %(pool)s  SystemName: %(systemname)s."
-msgstr ""
+msgstr "Pool: %(pool)s  SystemName: %(systemname)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1277
 #, python-format
 msgid "Pool name: %(poolname)s  System name: %(systemname)s."
-msgstr ""
+msgstr "Poolname: %(poolname)s  Systemname: %(systemname)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1292
 #, python-format
 msgid "Volume %(volumename)s not found on the array."
-msgstr ""
+msgstr "Datenträger %(volumename)s nicht auf Platteneinheit gefunden."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1295
 #, python-format
 msgid "Volume name: %(volumename)s  Volume instance: %(vol_instance)s."
-msgstr ""
+msgstr "Datenträgername: %(volumename)s  Datenträgerinstanz: %(vol_instance)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1310
 #, python-format
 msgid "Source: %(volumename)s  Target: %(snapshotname)s."
-msgstr ""
+msgstr "Quelle: %(volumename)s  Ziel: %(snapshotname)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1322
 #, python-format
@@ -6443,6 +6781,8 @@ msgid ""
 "Source: %(volumename)s  Target: %(snapshotname)s. Storage Synchronized "
 "not found. "
 msgstr ""
+"Quelle: %(volumename)s  Ziel: %(snapshotname)s. Synchronisierter Speicher"
+" nicht gefunden. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1327
 #, python-format
@@ -6450,16 +6790,18 @@ msgid ""
 "Storage system: %(storage_system)s  Storage Synchronized instance: "
 "%(sync)s."
 msgstr ""
+"Speichersystem: %(storage_system)s  Synchronisierte Speicherinstanz: "
+"%(sync)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1353
 #, python-format
 msgid "Error finding %s."
-msgstr ""
+msgstr "Fehler bei der Suche nach %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1357
 #, python-format
 msgid "Found %(name)s: %(initiator)s."
-msgstr ""
+msgstr "%(name)s gefunden: %(initiator)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1417
 #, python-format
@@ -6467,6 +6809,8 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage system %(storage_system)s "
 "and initiator %(initiator)s is  %(ctrl)s."
 msgstr ""
+"LunMaskingSCSIProtocolController für Speichersystem %(storage_system)s "
+"und Initiator %(initiator)s ist %(ctrl)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1458
 #, python-format
@@ -6474,6 +6818,8 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage volume %(vol)s and initiator"
 " %(initiator)s is  %(ctrl)s."
 msgstr ""
+"LunMaskingSCSIProtocolController für Speicherdatenträger %(vol)s und "
+"Initiator %(initiator)s ist %(ctrl)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1472
 #, python-format
@@ -6481,6 +6827,8 @@ msgid ""
 "Volume %(name)s not found on the array. Cannot determine if there are "
 "volumes mapped."
 msgstr ""
+"Datenträger %(name)s nicht auf Platteneinheit gefunden. Es kann nicht "
+"festgestellt werden, ob zugeordnete Datenträger vorhanden sind."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1484
 #, python-format
@@ -6488,6 +6836,8 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage system %(storage)s and "
 "%(connector)s is %(ctrl)s."
 msgstr ""
+"LunMaskingSCSIProtocolController für Speichersystem %(storage)s und "
+"%(connector)s ist %(ctrl)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1496
 #, python-format
@@ -6495,11 +6845,13 @@ msgid ""
 "Found %(numVolumesMapped)d volumes on storage system %(storage)s mapped "
 "to %(initiator)s."
 msgstr ""
+"%(numVolumesMapped)d Datenträger auf Speichersystem %(storage)s gefunden,"
+" die %(initiator)s zugeordnet sind."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1531
 #, python-format
 msgid "Available device number on %(storage)s: %(device)s."
-msgstr ""
+msgstr "Verfügbare Einheitennummer auf %(storage)s: %(device)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1556
 #, python-format
@@ -6512,26 +6864,30 @@ msgstr ""
 #, python-format
 msgid "Device number not found for volume %(volumename)s %(vol_instance)s."
 msgstr ""
+"Einheitennummer für Datenträger %(volumename)s %(vol_instance)s nicht "
+"gefunden."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1597
 #, python-format
 msgid "Found device number %(device)d for volume %(volumename)s %(vol_instance)s."
 msgstr ""
+"Einheitennummer %(device)d für Datenträger %(volumename)s "
+"%(vol_instance)s gefunden."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1607
 #, python-format
 msgid "Device info: %(data)s."
-msgstr ""
+msgstr "Einheiteninformationen: %(data)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1629
 #, python-format
 msgid "Masking view: %(view)s DeviceMaskingGroup: %(masking)s."
-msgstr ""
+msgstr "Maskenansicht: %(view)s DeviceMaskingGroup: %(masking)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1651
 #, python-format
 msgid "Found Storage Processor System: %s"
-msgstr ""
+msgstr "Speicherprozessorsystem gefunden: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1679
 #, python-format
@@ -6539,10 +6895,12 @@ msgid ""
 "iSCSIProtocolEndpoint for storage system %(storage_system)s and SP %(sp)s"
 " is  %(endpoint)s."
 msgstr ""
+"iSCSIProtocolEndpoint für Speichersystem %(storage_system)s und SP %(sp)s"
+" ist %(endpoint)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1720
 msgid "Error finding Storage Hardware ID Service."
-msgstr ""
+msgstr "Fehler bei der Suche nach ID-Service von Speicherhardware."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1726
 #, python-format
@@ -6550,41 +6908,45 @@ msgid ""
 "EMCGetTargetEndpoints: Service: %(service)s  Storage HardwareIDs: "
 "%(hardwareids)s."
 msgstr ""
+"EMCGetTargetEndpoints: Service: %(service)s  Speicherhardware-IDs: "
+"%(hardwareids)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1738
 msgid "Error finding Target WWNs."
-msgstr ""
+msgstr "Fehler bei der Suche nach Ziel-WWNs."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1748
 #, python-format
 msgid "Add target WWN: %s."
-msgstr ""
+msgstr "Ziel-WWN hinzufügen: %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1750
 #, python-format
 msgid "Target WWNs: %s."
-msgstr ""
+msgstr "Ziel-WWNs: %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1766
 #, python-format
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
-msgstr ""
+msgstr "Speicherhardware-IDs für %(wwpns)s sind %(foundInstances)s."
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
+"ISCSI-Endpunkt für SP %(sp)s auf Speichersystem %(storage)s nicht "
+"gefunden."
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
-msgstr ""
+msgstr "ISCSI-Eigenschaften: %s"
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:77
 msgid "Pool name is not specified."
@@ -6665,7 +7027,7 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:251
 #, python-format
 msgid "create_export: Volume: %(volume)s  Device ID: %(device_id)s"
-msgstr ""
+msgstr "create_export: Datenträger: %(volume)s  Einheiten-ID: %(device_id)s"
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:292
 #, python-format
@@ -6865,93 +7227,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7039,7 +7401,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7107,6 +7469,8 @@ msgstr ""
 #, python-format
 msgid "create_snapshot:snapshot name:%(snapshot)s, volume name:%(volume)s."
 msgstr ""
+"create_snapshot: Name der Momentaufnahme:%(snapshot)s, "
+"Datenträgername:%(volume)s."
 
 #: cinder/volume/drivers/huawei/rest_common.py:354
 #, python-format
@@ -7149,7 +7513,7 @@ msgstr ""
 #: cinder/volume/drivers/huawei/rest_common.py:874
 #, python-format
 msgid "terminate_connection:volume name: %(volume)s, initiator name: %(ini)s."
-msgstr ""
+msgstr "terminate_connection: Datenträgername: %(volume)s, Initiatorname: %(ini)s."
 
 #: cinder/volume/drivers/huawei/rest_common.py:937
 #, python-format
@@ -7208,7 +7572,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7239,12 +7603,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7277,7 +7641,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7288,111 +7652,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7400,77 +7764,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7624,97 +7988,97 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
-msgstr ""
+msgstr "%s ist nicht festgelegt"
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:143
 msgid "enter: do_setup"
-msgstr ""
+msgstr "Eingabe: do_setup"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:153
 #, python-format
@@ -7727,11 +8091,11 @@ msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:214
 msgid "leave: do_setup"
-msgstr ""
+msgstr "Belassen: do_setup"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:218
 msgid "enter: check_for_setup_error"
-msgstr ""
+msgstr "Eingeben: check_for_setup_error"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:222
 msgid "Unable to determine system name"
@@ -7746,6 +8110,9 @@ msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
+"Kennwort oder privater SSH-Schlüssel ist für Authentifizierung "
+"erforderlich. Legen Sie entweder die Option san_password oder die Option "
+"san_private_key fest"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:246
 #, python-format
@@ -7753,15 +8120,17 @@ msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
+"Unzulässiger Wert %d für storwize_svc_flashcopy_timeout angegeben. "
+"Gültige Werte liegen zwischen 0 und 600"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
 msgid "leave: check_for_setup_error"
-msgstr ""
+msgstr "Belassen: check_for_setup_error"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:264
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
-msgstr ""
+msgstr "ensure_export: Datenträger %s nicht in Speicher gefunden"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:283
 msgid "The connector does not contain the required information."
@@ -7771,6 +8140,8 @@ msgstr ""
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
+"'enter: initialize_connection': Datenträger '%(vol)s' mit Connector "
+"'%(conn)s'"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:338
 msgid "CHAP secret exists for host but CHAP is disabled"
@@ -7779,17 +8150,17 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:343
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
-msgstr ""
+msgstr "initialize_connection: Attribute für Datenträger %s wurden nicht abgerufen"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:355
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
-msgstr ""
+msgstr "Erwarteter Spaltenname nicht in lsvdisk gefunden: %s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:357
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
-msgstr ""
+msgstr "initialize_connection: Fehlendes Datenträgerattribut für Datenträger %s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:374
 #, python-format
@@ -7797,11 +8168,13 @@ msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
+"initialize_connection: Kein Knoten in E/A-Gruppe %(gid)s für Datenträger "
+"%(vol)s gefunden"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
-msgstr ""
+msgstr "initialize_connection: Kein bevorzugter Knoten für Datenträger %s gefunden"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:406
 msgid ""
@@ -7809,14 +8182,23 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
+"initialize_connection: Fehler beim Erfassen von Rückgabeeigenschaften für"
+" Datenträger %(vol)s und Connector %(conn)s.\n"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,101 +8206,114 @@ msgid ""
 " connector %(conn)s\n"
 " properties: %(prop)s"
 msgstr ""
+"Belassen: initialize_connection:\n"
+" Datenträger: %(vol)s\n"
+" Connector %(conn)s\n"
+" Eigenschaften: %(prop)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
+"'enter: terminate_connection:' Datenträger '%(vol)s' mit Connector "
+"'%(conn)s'"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "Belassen: terminate_connection: Datenträger %(vol)s mit Connector %(conn)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
+"create_volume_from_snapshot: Größe von Quelle und Ziel sind "
+"unterschiedlich."
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
-msgstr ""
+msgstr "create_cloned_volume: Größe von Quelle und Ziel sind unterschiedlich."
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7926,31 +8321,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
-msgstr ""
+msgstr "Pooldaten konnten nicht aus dem Speicher abgerufen werden"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8053,26 +8455,34 @@ msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
+"Unzulässiger Wert für storwize_svc_vol_rsize angegeben: Legen Sie ihn "
+"entweder auf einen Prozentsatz (0-100) oder auf -1 fest"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:388
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
+"Unzulässiger Wert für storwize_svc_vol_warning angegeben: Legen Sie ihn "
+"auf einen Prozentsatz (0-100) fest"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:395
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
+"Unzulässiger Wert für storwize_svc_vol_grainsize angegeben: Legen Sie ihn"
+" auf 32, 64, 128 oder 256 fest"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
 msgid "System does not support compression"
-msgstr ""
+msgstr "System unterstützt Komprimierung nicht"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:407
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
+"Wenn die Komprimierung auf 'True' gesetzt ist, muss 'rsize' auch "
+"festgelegt sein (ungleich -1)"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:413
 #, python-format
@@ -8080,6 +8490,8 @@ msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
+"Unzulässiger Wert %(prot)s für storwize_svc_connection_protocol "
+"angegeben: Gültige Werte sind %(enabled)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:422
 #, python-format
@@ -8098,7 +8510,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:504
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
-msgstr ""
+msgstr "Belassen: _create_vdisk: Datenträger %s "
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:531
 #, python-format
@@ -8135,6 +8547,8 @@ msgstr ""
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
+"Virtuelle Platte %(name)s ist nicht an Zuordnung %(src)s -> %(tgt)s "
+"beteiligt"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:637
 #, python-format
@@ -8171,15 +8585,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8191,18 +8612,17 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:213
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:250
-#, fuzzy, python-format
+#, python-format
 msgid ""
 "CLI Exception output:\n"
 " command: %(cmd)s\n"
 " stdout: %(out)s\n"
 " stderr: %(err)s"
 msgstr ""
-"%(description)s\n"
-"Befehl: %(cmd)s\n"
-"Exit-Code: %(exit_code)s\n"
-"Stdout: %(stdout)r\n"
-"Stderr: %(stderr)r"
+"Ausgabe bei CLI-Ausnahme:\n"
+" Befehl: %(cmd)s\n"
+" Standardausgabe: %(out)s\n"
+" Standardfehler: %(err)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:53
 #, python-format
@@ -8234,12 +8654,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -8310,36 +8730,36 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:69
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
-msgstr ""
+msgstr "Keine Metadateneigenschaft %(prop)s für LUN %(name)s definiert"
 
 #: cinder/volume/drivers/netapp/iscsi.py:105
 #, python-format
 msgid "Using NetApp filer: %s"
-msgstr ""
+msgstr "Verwendung von NetApp-Dateiserver: %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:150
 msgid "Success getting LUN list from server"
-msgstr ""
+msgstr "LUN-Liste erfolgreich von Server abgerufen"
 
 #: cinder/volume/drivers/netapp/iscsi.py:166
 #, python-format
 msgid "Created LUN with name %s"
-msgstr ""
+msgstr "LUN mit dem Namen %s erstellt"
 
 #: cinder/volume/drivers/netapp/iscsi.py:175
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
-msgstr ""
+msgstr "Kein Eintrag in LUN-Tabelle für Datenträger/Momentaufnahme %(name)s."
 
 #: cinder/volume/drivers/netapp/iscsi.py:191
 #, python-format
 msgid "Destroyed LUN %s"
-msgstr ""
+msgstr "LUN %s gelöscht"
 
 #: cinder/volume/drivers/netapp/iscsi.py:227
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
-msgstr ""
+msgstr "LUN %(name)s dem Initiator %(initiator_name)s zugeordnet"
 
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
@@ -8351,22 +8771,22 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:238
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
-msgstr ""
+msgstr "Fehler beim Abrufen von LUN-Zieldetails für LUN %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:249
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
-msgstr ""
+msgstr "Fehler beim Abrufen von Zielportal für LUN %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:252
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
-msgstr ""
+msgstr "Fehler beim Abrufen von qualifiziertem iSCSI-Zielnamen für LUN %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:290
-#, fuzzy, python-format
+#, python-format
 msgid "Snapshot %s deletion successful"
-msgstr "Volume %s: erfolgreich entfernt"
+msgstr "Löschung von Momentaufnahme %s erfolgreich"
 
 #: cinder/volume/drivers/netapp/iscsi.py:310
 #: cinder/volume/drivers/netapp/iscsi.py:557
@@ -8379,21 +8799,23 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:325
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
-msgstr ""
+msgstr "Zuordnung von LUN %(name)s zu Initiator %(initiator_name)s aufgehoben"
 
 #: cinder/volume/drivers/netapp/iscsi.py:414
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
-msgstr ""
+msgstr "Fehler bei Zuordnung von 'lun'. Code :%(code)s, Nachricht:%(message)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:433
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
+"Fehler beim Aufheben der Zuordnung von LUN. Code :%(code)s, "
+"Nachricht:%(message)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:503
 msgid "Object is not a NetApp LUN."
-msgstr ""
+msgstr "Objekt ist keine NetApp-LUN."
 
 #: cinder/volume/drivers/netapp/iscsi.py:535
 #, python-format
@@ -8492,12 +8914,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:841
 #, python-format
 msgid "No iscsi service found for vserver %s"
-msgstr ""
+msgstr "Kein iSCSI-Service für virtuellen Server %s gefunden"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1008
 #, python-format
 msgid "Cloned LUN with new name %s"
-msgstr ""
+msgstr "LUN mit neuem Namen %s geklont"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1012
 #, python-format
@@ -8520,9 +8942,9 @@ msgid "Api version could not be determined."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:1190
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get vol with required size for volume: %s"
-msgstr "Nicht möglich volume %s zufinden"
+msgstr "Fehler beim Abrufen von 'vol' mit erforderlicher Größe für Datenträger: %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1299
 #, python-format
@@ -8532,12 +8954,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:1443
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
-msgstr ""
+msgstr "Klonoperation mit src %(name)s und dest %(new_name)s abgeschlossen"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1446
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
-msgstr ""
+msgstr "Klonoperation mit src %(name)s und dest %(new_name)s fehlgeschlagen"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1509
 msgid "Volume refresh job already running. Returning..."
@@ -8676,7 +9098,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:460
 #, python-format
 msgid "Converted to raw, but format is now %s"
-msgstr ""
+msgstr "In unformatierten Zustand konvertiert, Format ist nun jedoch %s"
 
 #: cinder/volume/drivers/netapp/nfs.py:470
 #, python-format
@@ -8754,7 +9176,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:866
 #, python-format
 msgid "No interface found on cluster for ip %s"
-msgstr ""
+msgstr "Keine Schnittstelle auf Cluster für IP %s gefunden"
 
 #: cinder/volume/drivers/netapp/nfs.py:907
 #, python-format
@@ -8899,12 +9321,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:1349
 #, python-format
 msgid "No storage path found for export path %s"
-msgstr ""
+msgstr "Kein Speicherpfad für Exportpfad %s gefunden"
 
 #: cinder/volume/drivers/netapp/nfs.py:1359
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
-msgstr ""
+msgstr "Klonen mit src %(src_path)s, dest %(dest_path)s"
 
 #: cinder/volume/drivers/netapp/ssc_utils.py:241
 #, python-format
@@ -9273,7 +9695,7 @@ msgstr ""
 #: cinder/volume/drivers/nexenta/iscsi.py:105
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
-msgstr ""
+msgstr "Datenträger %s ist in Nexenta SA nicht vorhanden"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:151
 #, python-format
@@ -9349,10 +9771,10 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
-msgstr ""
+msgstr "Zielerstellungsfehler \"%s\" beim Sicherstellen von Export ignoriert"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:486
 #, python-format
@@ -9380,6 +9802,8 @@ msgid ""
 "Got error trying to destroy target group %(target_group)s, assuming it is"
 " already gone: %(exc)s"
 msgstr ""
+"Fehler bei Versuch, Zielgruppe %(target_group)s zu löschen; ist "
+"vermutlich bereits nicht mehr vorhanden: %(exc)s"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:559
 #, python-format
@@ -9387,29 +9811,31 @@ msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
 "gone: %(exc)s"
 msgstr ""
+"Fehler bei Versuch, Ziel %(target)s zu löschen; ist vermutlich bereits "
+"nicht mehr vorhanden: %(exc)s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:83
 #, python-format
 msgid "Sending JSON data: %s"
-msgstr ""
+msgstr "Senden von JSON-Daten: %s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:88
 msgid "No headers in server response"
-msgstr ""
+msgstr "Keine Header in Serverantwort"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:89
 msgid "Bad response from server"
-msgstr ""
+msgstr "Ungültige Antwort von Server"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:90
 #, python-format
 msgid "Auto switching to HTTPS connection to %s"
-msgstr ""
+msgstr "Automatisches Umschalten auf HTTPS-Verbindung zu %s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:96
 #, python-format
 msgid "Got response: %s"
-msgstr ""
+msgstr "Antwort: %s"
 
 #: cinder/volume/drivers/nexenta/nfs.py:85
 #, python-format
@@ -9472,290 +9898,302 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
-msgstr ""
+msgstr "'san_password' oder 'san_private_key' angeben"
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
-msgstr ""
+msgstr "'san_ip' muss festgelegt sein"
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
-msgstr ""
+msgstr "Ausgabe von Listenansicht kann nicht analysiert werden: %s"
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
-msgstr ""
+msgstr "LUID für %(zfs_poolname)s nicht gefunden. Output=%(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
-msgstr ""
+msgstr "CPG (%s) ist auf Platteneinheit nicht vorhanden"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
+"Ein gültiger Charakter %(valid)s muss angegeben werden. Wert "
+"'%(persona)s' ist ungültig."
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
+"Ein gültiger Bereitstellungstyp %(valid)s muss angegeben werden. Wert "
+"'%(prov)s' ist ungültig."
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
-msgstr ""
+msgstr "Datenträger (%s) ist auf Platteneinheit bereits vorhanden"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
-msgstr ""
+msgstr "CLIQ-Befehl hat %s zurückgegeben"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, python-format
 msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
+msgstr "Fehlerhafte Antwort auf CLIQ-Befehl %(verb)s %(cliq_args)s. Result=%(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, python-format
 msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
 msgstr ""
+"Fehler beim Ausführen von CLIQ-Befehl %(verb)s %(cliq_args)s.  "
+"Result=%(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, python-format
 msgid ""
 "Unexpected number of virtual ips for cluster  %(cluster_name)s. "
 "Result=%(_xml)s"
 msgstr ""
+"Unerwartete Anzahl virtueller IP-Adressen für Cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
+msgstr "Datenträgerinformation: %(volume_name)s => %(volume_attributes)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
-msgstr ""
+msgstr "'local_path' nicht unterstützt"
 
 #: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:75
 #, python-format
@@ -10147,7 +10585,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10307,7 +10745,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10427,62 +10865,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10767,7 +11205,7 @@ msgstr ""
 #: cinder/volume/drivers/windows/windows.py:102
 #, python-format
 msgid "Creating folder %s "
-msgstr ""
+msgstr "Ordner '%s' wird erstellt"
 
 #: cinder/volume/drivers/windows/windows_utils.py:47
 #, python-format
@@ -10794,7 +11232,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10802,35 +11240,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10838,42 +11281,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/el/LC_MESSAGES/cinder.po b/cinder/locale/el/LC_MESSAGES/cinder.po
index 542e0ee2f..2128bd493 100644
--- a/cinder/locale/el/LC_MESSAGES/cinder.po
+++ b/cinder/locale/el/LC_MESSAGES/cinder.po
@@ -8,11 +8,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2014-03-13 05:13+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Greek "
-"(http://www.transifex.com/projects/p/openstack/language/el/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/el/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -738,34 +738,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -784,17 +784,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -803,39 +803,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1328,26 +1328,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1453,7 +1465,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1699,7 +1711,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1708,40 +1720,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2023,7 +2035,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2088,7 +2100,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2099,237 +2111,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2863,7 +2934,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2885,45 +2956,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3048,11 +3123,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3066,7 +3141,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3080,49 +3155,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3173,11 +3248,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3406,22 +3481,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3432,7 +3507,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3759,12 +3834,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3835,7 +3910,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3869,7 +3944,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3901,7 +3976,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3910,12 +3985,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3923,7 +3998,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3941,7 +4016,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4201,66 +4276,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4294,20 +4369,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4322,18 +4397,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4356,7 +4431,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4376,7 +4451,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4385,13 +4460,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4399,10 +4474,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4441,285 +4523,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4774,14 +4850,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4907,7 +4983,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4987,219 +5063,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5308,174 +5384,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5642,8 +5718,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5676,12 +5752,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5752,19 +5828,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6570,18 +6646,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6865,93 +6941,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7039,7 +7115,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7208,7 +7284,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7239,12 +7315,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7277,7 +7353,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7288,111 +7364,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7400,77 +7476,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7624,90 +7700,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7809,14 +7885,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7825,100 +7908,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7926,31 +8014,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8171,15 +8266,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8229,12 +8331,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9344,7 +9446,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9467,288 +9569,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10142,7 +10248,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10302,7 +10408,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10422,62 +10528,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10789,7 +10895,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10797,35 +10903,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10833,42 +10944,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/en_AU/LC_MESSAGES/cinder.po b/cinder/locale/en_AU/LC_MESSAGES/cinder.po
index 51452ec24..1a5478ba2 100644
--- a/cinder/locale/en_AU/LC_MESSAGES/cinder.po
+++ b/cinder/locale/en_AU/LC_MESSAGES/cinder.po
@@ -1,16 +1,18 @@
-# English (Australia) translation for cinder
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the cinder package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+# English (Australia) translations for cinder.
+# Copyright (C) 2014 ORGANIZATION
+# This file is distributed under the same license as the cinder project.
 #
+# Translators:
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011
 msgid ""
 msgstr ""
-"Project-Id-Version:  cinder\n"
-"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-03-29 06:10+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"
+"Project-Id-Version:  Cinder\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
+"Language-Team: English (Australia) "
+"(http://www.transifex.com/projects/p/cinder/language/en_AU/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -29,11 +31,11 @@ msgstr ""
 
 #: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
-msgstr ""
+msgstr "An unknown exception occurred."
 
 #: cinder/exception.py:88
 msgid "Exception in string format operation"
-msgstr ""
+msgstr "Exception in string format operation"
 
 #: cinder/exception.py:107
 #, python-format
@@ -57,7 +59,7 @@ msgstr ""
 
 #: cinder/exception.py:124
 msgid "Not authorized."
-msgstr ""
+msgstr "Not authorised."
 
 #: cinder/exception.py:129
 msgid "User does not have admin privileges"
@@ -69,9 +71,9 @@ msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
 #: cinder/exception.py:137
-#, fuzzy, python-format
+#, python-format
 msgid "Not authorized for image %(image_id)s."
-msgstr "Not authorized for image %(image_id)s."
+msgstr "Not authorised for image %(image_id)s."
 
 #: cinder/exception.py:141
 msgid "Volume driver not ready."
@@ -79,7 +81,7 @@ msgstr ""
 
 #: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
-msgstr ""
+msgstr "Unacceptable parameters."
 
 #: cinder/exception.py:150
 #, python-format
@@ -132,7 +134,7 @@ msgstr ""
 #: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
-msgstr ""
+msgstr "%(err)s"
 
 #: cinder/exception.py:197
 #, python-format
@@ -151,7 +153,7 @@ msgstr ""
 #: cinder/exception.py:210
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
-msgstr ""
+msgstr "Image %(image_id)s is unacceptable: %(reason)s"
 
 #: cinder/exception.py:214
 #, python-format
@@ -161,11 +163,11 @@ msgstr ""
 #: cinder/exception.py:218
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
-msgstr ""
+msgstr "Expected a uuid but received %(uuid)s."
 
 #: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
-msgstr ""
+msgstr "Resource could not be found."
 
 #: cinder/exception.py:228
 #, python-format
@@ -246,12 +248,12 @@ msgstr ""
 #: cinder/exception.py:291
 #, python-format
 msgid "Invalid image href %(image_href)s."
-msgstr ""
+msgstr "Invalid image href %(image_href)s."
 
 #: cinder/exception.py:295
 #, python-format
 msgid "Image %(image_id)s could not be found."
-msgstr ""
+msgstr "Image %(image_id)s could not be found."
 
 #: cinder/exception.py:299
 #, python-format
@@ -330,9 +332,9 @@ msgid "File %(file_path)s could not be found."
 msgstr ""
 
 #: cinder/exception.py:365
-#, fuzzy, python-format
+#, python-format
 msgid "Volume Type %(id)s already exists."
-msgstr "Volume Type %(id)s already exists."
+msgstr ""
 
 #: cinder/exception.py:369
 #, python-format
@@ -352,12 +354,12 @@ msgstr ""
 #: cinder/exception.py:381
 #, python-format
 msgid "Could not find config at %(path)s"
-msgstr ""
+msgstr "Could not find config at %(path)s"
 
 #: cinder/exception.py:385
-#, fuzzy, python-format
+#, python-format
 msgid "Could not find parameter %(param)s"
-msgstr "Could not find parameter %(param)s"
+msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
@@ -449,9 +451,9 @@ msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:469
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to copy image to volume: %(reason)s"
-msgstr "Failed to copy image to volume: %(reason)s"
+msgstr ""
 
 #: cinder/exception.py:473
 msgid "Invalid Ceph args provided for backup rbd operation"
@@ -483,9 +485,9 @@ msgid "Failed to identify volume backend."
 msgstr ""
 
 #: cinder/exception.py:501
-#, fuzzy, python-format
+#, python-format
 msgid "Invalid backup: %(reason)s"
-msgstr "Invalid backup: %(reason)s"
+msgstr ""
 
 #: cinder/exception.py:505
 #, python-format
@@ -605,9 +607,9 @@ msgid "Zadara Cinder Driver exception."
 msgstr ""
 
 #: cinder/exception.py:611
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to create server object for initiator %(name)s"
-msgstr "Unable to create server object for initiator %(name)s"
+msgstr ""
 
 #: cinder/exception.py:615
 #, python-format
@@ -730,40 +732,40 @@ msgstr ""
 
 #: cinder/policy.py:30
 msgid "JSON file representing policy"
-msgstr ""
+msgstr "JSON file representing policy"
 
 #: cinder/policy.py:33
 msgid "Rule checked when requested rule is not found"
-msgstr ""
+msgstr "Rule checked when requested rule is not found"
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -782,17 +784,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
-#, fuzzy, python-format
+#: cinder/service.py:99
+#, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
-msgstr "Starting %(topic)s node (version %(version_string)s)"
+msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -801,39 +803,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr "Service killed that has no database entry"
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr "The service database object disappeared, Recreating it."
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr "Recovered model server connection!"
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr "model server went away"
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
-msgstr ""
+msgstr "Full set of CONF:"
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -853,9 +855,9 @@ msgid "Specify a password or private_key"
 msgstr ""
 
 #: cinder/utils.py:229
-#, fuzzy, python-format
+#, python-format
 msgid "Error connecting via ssh: %s"
-msgstr "Error connecting via ssh: %s"
+msgstr ""
 
 #: cinder/utils.py:413
 #, python-format
@@ -870,7 +872,7 @@ msgstr "backend %s"
 #: cinder/utils.py:699
 #, python-format
 msgid "Could not remove tmpdir: %s"
-msgstr ""
+msgstr "Could not remove tmpdir: %s"
 
 #: cinder/utils.py:760
 #, python-format
@@ -893,17 +895,17 @@ msgid "%(name)s has more than %(max_length)s characters."
 msgstr ""
 
 #: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find cert_file : %s"
 msgstr "Unable to find cert_file : %s"
 
 #: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find ca_file : %s"
 msgstr "Unable to find ca_file : %s"
 
 #: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find key_file : %s"
 msgstr "Unable to find key_file : %s"
 
@@ -912,6 +914,8 @@ msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 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:178
 #, python-format
@@ -1083,9 +1087,9 @@ msgid "show called for member %s"
 msgstr ""
 
 #: cinder/api/contrib/backups.py:173
-#, fuzzy, python-format
+#, python-format
 msgid "delete called for member %s"
-msgstr "delete called for member %s"
+msgstr ""
 
 #: cinder/api/contrib/backups.py:176
 #, python-format
@@ -1153,7 +1157,7 @@ msgstr ""
 
 #: cinder/api/contrib/hosts.py:86 cinder/api/openstack/wsgi.py:237
 msgid "cannot understand XML"
-msgstr ""
+msgstr "cannot understand XML"
 
 #: cinder/api/contrib/hosts.py:136
 #, python-format
@@ -1326,26 +1330,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1371,14 +1387,14 @@ msgid "Listing volume transfers"
 msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:147
-#, fuzzy, python-format
+#, python-format
 msgid "Creating new volume transfer %s"
-msgstr "Creating new volume transfer %s"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:162
-#, fuzzy, python-format
+#, python-format
 msgid "Creating transfer of volume %s"
-msgstr "Creating transfer of volume %s"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:183
 #, python-format
@@ -1386,9 +1402,9 @@ msgid "Accepting volume transfer %s"
 msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:196
-#, fuzzy, python-format
+#, python-format
 msgid "Accepting transfer %s"
-msgstr "Accepting transfer %s"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:217
 #, python-format
@@ -1451,7 +1467,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1481,7 +1497,7 @@ msgstr ""
 #: cinder/api/middleware/sizelimit.py:55 cinder/api/middleware/sizelimit.py:64
 #: cinder/api/middleware/sizelimit.py:78
 msgid "Request is too large."
-msgstr ""
+msgstr "Request is too large."
 
 #: cinder/api/openstack/__init__.py:69
 msgid "Must specify an ExtensionManager class"
@@ -1518,7 +1534,7 @@ msgstr ""
 
 #: cinder/api/openstack/wsgi.py:212 cinder/api/openstack/wsgi.py:628
 msgid "cannot understand JSON"
-msgstr ""
+msgstr "cannot understand JSON"
 
 #: cinder/api/openstack/wsgi.py:633
 msgid "too many body keys"
@@ -1527,7 +1543,7 @@ msgstr ""
 #: cinder/api/openstack/wsgi.py:671
 #, python-format
 msgid "Exception handling resource: %s"
-msgstr ""
+msgstr "Exception handling resource: %s"
 
 #: cinder/api/openstack/wsgi.py:676
 #, python-format
@@ -1608,9 +1624,8 @@ msgstr ""
 #: cinder/api/v1/snapshot_metadata.py:156 cinder/api/v2/snapshot_metadata.py:37
 #: cinder/api/v2/snapshot_metadata.py:117
 #: cinder/api/v2/snapshot_metadata.py:156
-#, fuzzy
 msgid "snapshot does not exist"
-msgstr "snapshot does not exist"
+msgstr ""
 
 #: cinder/api/v1/snapshot_metadata.py:139
 #: cinder/api/v1/snapshot_metadata.py:149 cinder/api/v1/volume_metadata.py:139
@@ -1642,9 +1657,8 @@ msgstr ""
 #: cinder/api/v1/volume_metadata.py:37 cinder/api/v1/volume_metadata.py:117
 #: cinder/api/v1/volume_metadata.py:156 cinder/api/v2/volume_metadata.py:36
 #: cinder/api/v2/volume_metadata.py:116 cinder/api/v2/volume_metadata.py:155
-#, fuzzy
 msgid "volume does not exist"
-msgstr "volume does not exist"
+msgstr ""
 
 #: cinder/api/v1/volumes.py:114
 #, python-format
@@ -1699,53 +1713,49 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
 
 #: cinder/backup/api.py:66
-#, fuzzy
 msgid "Backup status must be available or error"
-msgstr "Backup status must be available or error"
+msgstr ""
 
-#: cinder/backup/api.py:115
-#, fuzzy
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
-msgstr "Volume to be backed up must be available"
+msgstr ""
 
-#: cinder/backup/api.py:150
-#, fuzzy
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
-msgstr "Backup status must be available"
+msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
-#, fuzzy
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
-msgstr "Volume to be restored to must be available"
+msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2027,7 +2037,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2092,7 +2102,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2103,237 +2113,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:463
+#, python-format
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:474
+#, python-format
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:492
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Pipe1 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:506
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Pipe2 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2714,14 +2783,14 @@ msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
 #: cinder/brick/exception.py:108
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
-msgstr "Failed to create iscsi target for volume %(volume_id)s."
+msgstr ""
 
 #: cinder/brick/exception.py:112
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
-msgstr "Failed to remove iscsi target for volume %(volume_id)s."
+msgstr ""
 
 #: cinder/brick/exception.py:116
 #, python-format
@@ -2867,10 +2936,10 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
+#, 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"
+msgstr ""
 
 #: cinder/brick/iscsi/iscsi.py:222
 #, python-format
@@ -2889,45 +2958,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
+#, 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"
+msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:552
+#, python-format
 msgid "Removing iscsi_target: %s"
-msgstr "Removing iscsi_target: %s"
+msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2961,18 +3034,18 @@ msgid "StdErr  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:82
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to locate Volume Group %s"
-msgstr "Unable to locate Volume Group %s"
+msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:157
 msgid "Error querying thin pool about data_percent"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:370
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find VG: %s"
-msgstr "Unable to find VG: %s"
+msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:420
 msgid ""
@@ -3052,25 +3125,25 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
 #: cinder/common/sqlalchemyutils.py:66
 #: cinder/openstack/common/db/sqlalchemy/utils.py:72
 msgid "Id not in sort_keys; is sort_keys unique?"
-msgstr ""
+msgstr "Id not in sort_keys; is sort_keys unique?"
 
 #: cinder/common/sqlalchemyutils.py:114
 #: cinder/openstack/common/db/sqlalchemy/utils.py:120
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
-msgstr ""
+msgstr "Unknown sort direction, must be 'desc' or 'asc'"
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3082,52 +3155,51 @@ msgstr "Use of empty request context is deprecated"
 #: cinder/db/sqlalchemy/api.py:192
 #, python-format
 msgid "Unrecognized read_deleted value '%s'"
-msgstr ""
+msgstr "Unrecognized read_deleted value '%s'"
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
-#, fuzzy
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
-msgstr "Volume must be available"
+msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3136,11 +3208,11 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migration.py:37
 msgid "version should be an integer"
-msgstr ""
+msgstr "version should be an integer"
 
 #: cinder/db/sqlalchemy/migration.py:64
 msgid "Upgrade DB using Essex release first."
-msgstr ""
+msgstr "Upgrade DB using Essex release first."
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/001_cinder_init.py:240
 msgid "Exception while creating table."
@@ -3178,11 +3250,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3285,12 +3357,12 @@ msgstr ""
 
 #: cinder/image/image_utils.py:94 cinder/image/image_utils.py:199
 msgid "'qemu-img info' parsing failed."
-msgstr ""
+msgstr "'qemu-img info' parsing failed."
 
 #: cinder/image/image_utils.py:101
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
-msgstr ""
+msgstr "fmt=%(fmt)s backed by: %(backing_file)s"
 
 #: cinder/image/image_utils.py:109 cinder/image/image_utils.py:192
 #, python-format
@@ -3350,32 +3422,34 @@ msgstr ""
 #: cinder/openstack/common/eventlet_backdoor.py:140
 #, python-format
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
-msgstr ""
+msgstr "Eventlet backdoor listening on %(port)s for process %(pid)d"
 
 #: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
-msgstr ""
+msgstr "Original exception being dropped: %s"
 
 #: cinder/openstack/common/excutils.py:91
 #, python-format
 msgid "Unexpected exception occurred %d time(s)... retrying."
-msgstr ""
+msgstr "Unexpected exception occurred %d time(s)... retrying."
 
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
-msgstr ""
+msgstr "Reloading cached file %s"
 
 #: cinder/openstack/common/gettextutils.py:271
 msgid "Message objects do not support addition."
-msgstr ""
+msgstr "Message objects do not support addition."
 
 #: cinder/openstack/common/gettextutils.py:280
 msgid ""
 "Message objects do not support str() because they may contain non-ascii "
 "characters. Please use unicode() or translate() instead."
 msgstr ""
+"Message objects do not support str() because they may contain non-ascii "
+"characters. Please use unicode() or translate() instead."
 
 #: cinder/openstack/common/imageutils.py:75
 #, python-format
@@ -3384,12 +3458,12 @@ msgstr ""
 
 #: cinder/openstack/common/imageutils.py:104
 msgid "Snapshot list encountered but no header found!"
-msgstr ""
+msgstr "Snapshot list encountered but no header found!"
 
 #: cinder/openstack/common/lockutils.py:102
 #, python-format
 msgid "Could not release the acquired lock `%s`"
-msgstr ""
+msgstr "Could not release the acquired lock `%s`"
 
 #: cinder/openstack/common/lockutils.py:189
 #, python-format
@@ -3411,69 +3485,69 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
-#, fuzzy, python-format
+#: cinder/openstack/common/log.py:327
+#, python-format
 msgid "Deprecated: %s"
-msgstr "received %s"
+msgstr "Deprecated: %s"
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
-msgstr ""
+msgstr "Error loading logging config %(log_config)s: %(err_msg)s"
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
-msgstr ""
+msgstr "syslog facility must be one of: %s"
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
-msgstr ""
+msgstr "Fatal call to deprecated config: %(msg)s"
 
 #: cinder/openstack/common/loopingcall.py:82
 #, python-format
 msgid "task run outlasted interval by %s sec"
-msgstr ""
+msgstr "task run outlasted interval by %s sec"
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
-msgstr ""
+msgstr "in fixed duration looping call"
 
 #: cinder/openstack/common/loopingcall.py:129
 #, python-format
 msgid "Dynamic looping call sleeping for %.02f seconds"
-msgstr ""
+msgstr "Dynamic looping call sleeping for %.02f seconds"
 
 #: cinder/openstack/common/loopingcall.py:136
 msgid "in dynamic looping call"
-msgstr ""
+msgstr "in dynamic looping call"
 
 #: cinder/openstack/common/periodic_task.py:43
 #, python-format
 msgid "Unexpected argument for periodic task creation: %(arg)s."
-msgstr ""
+msgstr "Unexpected argument for periodic task creation: %(arg)s."
 
 #: cinder/openstack/common/periodic_task.py:134
 #, python-format
 msgid "Skipping periodic task %(task)s because its interval is negative"
-msgstr ""
+msgstr "Skipping periodic task %(task)s because its interval is negative"
 
 #: cinder/openstack/common/periodic_task.py:139
 #, python-format
 msgid "Skipping periodic task %(task)s because it is disabled"
-msgstr ""
+msgstr "Skipping periodic task %(task)s because it is disabled"
 
 #: cinder/openstack/common/periodic_task.py:177
 #, python-format
 msgid "Running periodic task %(full_task_name)s"
-msgstr ""
+msgstr "Running periodic task %(full_task_name)s"
 
 #: cinder/openstack/common/periodic_task.py:186
 #, python-format
 msgid "Error during %(full_task_name)s: %(e)s"
-msgstr ""
+msgstr "Error during %(full_task_name)s: %(e)s"
 
 #: cinder/openstack/common/policy.py:149
 #, python-format
@@ -3495,12 +3569,12 @@ msgstr ""
 #: cinder/openstack/common/policy.py:180
 #, python-format
 msgid "No handler for matches of kind %s"
-msgstr ""
+msgstr "No handler for matches of kind %s"
 
 #: cinder/openstack/common/processutils.py:127
 #, python-format
 msgid "Got unknown keyword args to utils.execute: %r"
-msgstr ""
+msgstr "Got unknown keyword args to utils.execute: %r"
 
 #: cinder/openstack/common/processutils.py:142
 #, python-format
@@ -3517,7 +3591,7 @@ msgstr "Result was %s"
 #: cinder/openstack/common/processutils.py:179
 #, python-format
 msgid "%r failed. Retrying."
-msgstr ""
+msgstr "%r failed. Retrying."
 
 #: cinder/openstack/common/processutils.py:218
 #, python-format
@@ -3526,11 +3600,11 @@ msgstr "Running cmd (SSH): %s"
 
 #: cinder/openstack/common/processutils.py:220
 msgid "Environment not supported over SSH"
-msgstr ""
+msgstr "Environment not supported over SSH"
 
 #: cinder/openstack/common/processutils.py:224
 msgid "process_input not supported over SSH"
-msgstr ""
+msgstr "process_input not supported over SSH"
 
 #: cinder/openstack/common/request_utils.py:66
 #, python-format
@@ -3553,69 +3627,68 @@ msgstr ""
 #: cinder/openstack/common/service.py:269
 #, python-format
 msgid "Caught %s, exiting"
-msgstr ""
+msgstr "Caught %s, exiting"
 
 #: cinder/openstack/common/service.py:187
 msgid "Exception during rpc cleanup."
-msgstr ""
+msgstr "Exception during rpc cleanup."
 
 #: cinder/openstack/common/service.py:238
 msgid "Parent process has died unexpectedly, exiting"
-msgstr ""
+msgstr "Parent process has died unexpectedly, exiting"
 
 #: cinder/openstack/common/service.py:275
-#, fuzzy
 msgid "Unhandled exception"
 msgstr "Unhandled exception"
 
 #: cinder/openstack/common/service.py:308
 msgid "Forking too fast, sleeping"
-msgstr ""
+msgstr "Forking too fast, sleeping"
 
 #: cinder/openstack/common/service.py:327
 #, python-format
 msgid "Started child %d"
-msgstr ""
+msgstr "Started child %d"
 
 #: cinder/openstack/common/service.py:337
-#, fuzzy, python-format
+#, python-format
 msgid "Starting %d workers"
 msgstr "Starting %d workers"
 
 #: cinder/openstack/common/service.py:354
 #, python-format
 msgid "Child %(pid)d killed by signal %(sig)d"
-msgstr ""
+msgstr "Child %(pid)d killed by signal %(sig)d"
 
 #: cinder/openstack/common/service.py:358
 #, python-format
 msgid "Child %(pid)s exited with status %(code)d"
-msgstr ""
+msgstr "Child %(pid)s exited with status %(code)d"
 
 #: cinder/openstack/common/service.py:362
 #, python-format
 msgid "pid %d not in child list"
-msgstr ""
+msgstr "pid %d not in child list"
 
 #: cinder/openstack/common/service.py:392
 #, python-format
 msgid "Caught %s, stopping children"
-msgstr ""
+msgstr "Caught %s, stopping children"
 
 #: cinder/openstack/common/service.py:410
 #, python-format
 msgid "Waiting on %d children to exit"
-msgstr ""
+msgstr "Waiting on %d children to exit"
 
 #: cinder/openstack/common/sslutils.py:98
 #, python-format
 msgid "Invalid SSL version : %s"
-msgstr ""
+msgstr "Invalid SSL version : %s"
 
 #: cinder/openstack/common/strutils.py:92
 #, python-format
 msgid "Unrecognized value '%(val)s', acceptable values are: %(acceptable)s"
-msgstr ""
+msgstr "Unrecognised value '%(val)s', acceptable values are: %(acceptable)s"
 
 #: cinder/openstack/common/strutils.py:202
 #, python-format
@@ -3625,7 +3698,7 @@ msgstr ""
 #: cinder/openstack/common/strutils.py:211
 #, python-format
 msgid "Invalid string format: %s"
-msgstr ""
+msgstr "Invalid string format: %s"
 
 #: cinder/openstack/common/versionutils.py:69
 #, python-format
@@ -3633,6 +3706,8 @@ msgid ""
 "%(what)s is deprecated as of %(as_of)s in favor of %(in_favor_of)s and "
 "may be removed in %(remove_in)s."
 msgstr ""
+"%(what)s is deprecated as of %(as_of)s in favor of %(in_favor_of)s and "
+"may be removed in %(remove_in)s."
 
 #: cinder/openstack/common/versionutils.py:73
 #, python-format
@@ -3640,42 +3715,44 @@ msgid ""
 "%(what)s is deprecated as of %(as_of)s and may be removed in "
 "%(remove_in)s. It will not be superseded."
 msgstr ""
+"%(what)s is deprecated as of %(as_of)s and may be removed in "
+"%(remove_in)s. It will not be superseded."
 
 #: cinder/openstack/common/crypto/utils.py:29
 msgid "An unknown error occurred in crypto utils."
-msgstr ""
+msgstr "An unknown error occurred in crypto utils."
 
 #: cinder/openstack/common/crypto/utils.py:36
 #, python-format
 msgid "Block size of %(given)d is too big, max = %(maximum)d"
-msgstr ""
+msgstr "Block size of %(given)d is too big, max = %(maximum)d"
 
 #: cinder/openstack/common/crypto/utils.py:45
 #, python-format
 msgid "Length of %(given)d is too long, max = %(maximum)d"
-msgstr ""
+msgstr "Length of %(given)d is too long, max = %(maximum)d"
 
 #: cinder/openstack/common/db/exception.py:44
 msgid "Invalid Parameter: Unicode is not supported by the current database."
-msgstr ""
+msgstr "Invalid Parameter: Unicode is not supported by the current database."
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:487
 msgid "DB exception wrapped."
-msgstr ""
+msgstr "DB exception wrapped."
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:538
 #, python-format
 msgid "Got mysql server has gone away: %s"
-msgstr ""
+msgstr "Got mysql server has gone away: %s"
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:610
 #, python-format
 msgid "SQL connection failed. %s attempts left."
-msgstr ""
+msgstr "SQL connection failed. %s attempts left."
 
 #: cinder/openstack/common/db/sqlalchemy/utils.py:33
 msgid "Sort key supplied was not valid."
-msgstr ""
+msgstr "Sort key supplied was not valid."
 
 #: cinder/openstack/common/scheduler/filters/capabilities_filter.py:54
 #, python-format
@@ -3709,9 +3786,8 @@ msgid "Must implement a fallback schedule"
 msgstr "Must implement a fallback schedule"
 
 #: cinder/scheduler/driver.py:82
-#, fuzzy
 msgid "Must implement schedule_create_volume"
-msgstr "Must implement schedule_create_volume"
+msgstr ""
 
 #: cinder/scheduler/filter_scheduler.py:98
 #, python-format
@@ -3766,12 +3842,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3842,7 +3918,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr "FAKE ISCSI: %s"
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3876,7 +3952,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3908,7 +3984,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3917,12 +3993,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3930,7 +4006,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3948,7 +4024,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -3961,9 +4037,9 @@ msgid "mount failed."
 msgstr ""
 
 #: cinder/tests/integrated/test_login.py:29
-#, fuzzy, python-format
+#, python-format
 msgid "volume: %s"
-msgstr "volume: %s"
+msgstr ""
 
 #: cinder/tests/integrated/api/client.py:34
 #, python-format
@@ -4053,9 +4129,9 @@ msgid "status must be available"
 msgstr ""
 
 #: cinder/transfer/api.py:119
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to create transfer record for %s"
-msgstr "Failed to create transfer record for %s"
+msgstr ""
 
 #: cinder/transfer/api.py:136
 #, python-format
@@ -4133,9 +4209,8 @@ msgid "status must be in-use to detach"
 msgstr ""
 
 #: cinder/volume/api.py:371
-#, fuzzy
 msgid "Volume status must be available to reserve"
-msgstr "Volume status must be available to reserve"
+msgstr ""
 
 #: cinder/volume/api.py:447
 msgid "Snapshot cannot be created while volume is migrating"
@@ -4160,9 +4235,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/api.py:536
-#, fuzzy
 msgid "Volume Snapshot status must be available or error"
-msgstr "Volume Snapshot status must be available or error"
+msgstr ""
 
 #: cinder/volume/api.py:564 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
@@ -4177,9 +4251,8 @@ msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
 #: cinder/volume/api.py:703 cinder/volume/api.py:777
-#, fuzzy
 msgid "Volume status must be available/in-use."
-msgstr "Volume status must be available/in-use."
+msgstr ""
 
 #: cinder/volume/api.py:706
 msgid "Volume status is in-use."
@@ -4211,66 +4284,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4304,20 +4377,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4332,18 +4405,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr "volume %s: removing export"
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4366,7 +4439,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4381,12 +4454,12 @@ msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
 #: cinder/volume/driver.py:701
-#, fuzzy, python-format
+#, python-format
 msgid "Could not find iSCSI export for volume %s"
-msgstr "Could not find iSCSI export  for volume %s"
+msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4395,13 +4468,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4409,10 +4482,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4451,286 +4531,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr "Re-exporting %s volumes"
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr "volume %s: skipping export"
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr "volume %s: deleting"
 
-#: cinder/volume/manager.py:390
-#, fuzzy
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
-msgstr "Volume is not local to this node"
+msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr "volume %s: deleted successfully"
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
-#, fuzzy, python-format
+#: cinder/volume/manager.py:686
+#, 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"
+msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4785,14 +4858,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4806,9 +4879,9 @@ msgstr ""
 
 #: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:284
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
-#, fuzzy, python-format
+#, python-format
 msgid "Creating clone of volume: %s"
-msgstr "Creating clone of volume: %s"
+msgstr ""
 
 #: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
@@ -4918,11 +4991,11 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
-#, fuzzy, python-format
+#, python-format
 msgid "Error running SSH command: %s"
-msgstr "Error running SSH command: %s"
+msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:282
 #, python-format
@@ -4998,219 +5071,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
-#, fuzzy, python-format
+#, python-format
 msgid "casted to %s"
-msgstr "casted to %s"
+msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5275,9 +5348,9 @@ msgid " but size is now %d"
 msgstr ""
 
 #: cinder/volume/drivers/nfs.py:380
-#, fuzzy, python-format
+#, python-format
 msgid "%s is already mounted"
-msgstr "%s is already mounted"
+msgstr ""
 
 #: cinder/volume/drivers/nfs.py:432
 #, python-format
@@ -5319,176 +5392,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:212
+#, python-format
 msgid "error opening rbd image %s"
-msgstr "error opening rbd image %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
-#, fuzzy
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
-msgstr "error connecting to ceph cluster"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:703
+#, python-format
 msgid "connection data: %s"
-msgstr "connection data: %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
-#, fuzzy
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
-msgstr "Not an rbd snapshot"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:731
+#, python-format
 msgid "not cloneable: %s"
-msgstr "not cloneable: %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:754
+#, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
-msgstr "Unable to open image %(loc)s: %(err)s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5582,9 +5653,9 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:200
 #: cinder/volume/drivers/solidfire.py:269
 #: cinder/volume/drivers/solidfire.py:364
-#, fuzzy, python-format
+#, python-format
 msgid "API response: %s"
-msgstr "API response: %s"
+msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:220
 #, python-format
@@ -5602,9 +5673,8 @@ msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:396
-#, fuzzy
 msgid "Failed to get model update from clone"
-msgstr "Failed to get model update from clone"
+msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:408
 #, python-format
@@ -5656,8 +5726,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5687,16 +5757,15 @@ msgid "Updating cluster status info"
 msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:671
-#, fuzzy
 msgid "Failed to get updated stats"
-msgstr "Failed to get updated stats"
+msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5767,22 +5836,22 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr "Could not find iSCSI export  for volume %s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
-#, fuzzy, python-format
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
+#, python-format
 msgid "Cannot find device number for volume %s"
-msgstr "Cannot find device number for volume %s"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
-#, fuzzy, python-format
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
+#, python-format
 msgid "Found iSCSI endpoint: %s"
-msgstr "Found iSCSI endpoint: %s"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:209
 #, python-format
@@ -5806,9 +5875,9 @@ msgid "Entering create_volume."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:86
-#, fuzzy, python-format
+#, python-format
 msgid "Create Volume: %(volume)s  Size: %(size)lu"
-msgstr "Create Volume: %(volume)s  Size: %(size)lu"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:94
 #, python-format
@@ -6210,14 +6279,14 @@ msgid "ExposePaths parameter LunMaskingSCSIProtocolController: %(lunmasking)s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:771
-#, fuzzy, python-format
+#, python-format
 msgid "Error mapping volume %s."
-msgstr "Error mapping volume %s."
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:775
-#, fuzzy, python-format
+#, python-format
 msgid "ExposePaths for volume %s completed successfully."
-msgstr "ExposePaths for volume %s completed successfully."
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:791
 #, python-format
@@ -6232,9 +6301,9 @@ msgid "Error unmapping volume %s."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:808
-#, fuzzy, python-format
+#, python-format
 msgid "HidePaths for volume %s completed successfully."
-msgstr "HidePaths for volume %s completed successfully."
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:821
 #, python-format
@@ -6249,9 +6318,9 @@ msgid "Error mapping volume %(vol)s. %(error)s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:841
-#, fuzzy, python-format
+#, python-format
 msgid "AddMembers for volume %s completed successfully."
-msgstr "AddMembers for volume %s completed successfully."
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:854
 #, python-format
@@ -6266,9 +6335,9 @@ msgid "Error unmapping volume %(vol)s. %(error)s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:872
-#, fuzzy, python-format
+#, python-format
 msgid "RemoveMembers for volume %s completed successfully."
-msgstr "RemoveMembers for volume %s completed successfully."
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:878
 #, python-format
@@ -6394,9 +6463,8 @@ msgid "Ecom server not found."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1153
-#, fuzzy
 msgid "Cannot connect to ECOM server"
-msgstr "Cannot connect to ECOM server"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1165
 #, python-format
@@ -6444,9 +6512,9 @@ msgid "Volume %(volumename)s not found on the array."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1295
-#, fuzzy, python-format
+#, python-format
 msgid "Volume name: %(volumename)s  Volume instance: %(vol_instance)s."
-msgstr "Volume name: %(volumename)s  Volume instance: %(vol_instance)s."
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1310
 #, python-format
@@ -6586,18 +6654,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6679,9 +6747,9 @@ msgid "Failed to list %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:251
-#, fuzzy, python-format
+#, python-format
 msgid "create_export: Volume: %(volume)s  Device ID: %(device_id)s"
-msgstr "create_export: Volume: %(volume)s  Device ID: %(device_id)s"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:292
 #, python-format
@@ -6881,93 +6949,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
-#, fuzzy, python-format
+#: cinder/volume/drivers/hds/hds.py:251
+#, python-format
 msgid "HDP not found: %s"
-msgstr "HDP not found: %s"
+msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7055,7 +7123,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7224,7 +7292,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7255,12 +7323,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7293,7 +7361,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7304,111 +7372,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7416,77 +7484,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7640,90 +7708,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7825,14 +7893,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7841,100 +7916,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7942,31 +8022,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8187,15 +8274,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8207,18 +8301,13 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:213
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:250
-#, fuzzy, python-format
+#, python-format
 msgid ""
 "CLI Exception output:\n"
 " command: %(cmd)s\n"
 " stdout: %(out)s\n"
 " stderr: %(err)s"
 msgstr ""
-"%(description)s\n"
-"Command: %(cmd)s\n"
-"Exit code: %(exit_code)s\n"
-"Stdout: %(stdout)r\n"
-"Stderr: %(stderr)r"
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:53
 #, python-format
@@ -8250,12 +8339,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -8329,9 +8418,9 @@ msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:105
-#, fuzzy, python-format
+#, python-format
 msgid "Using NetApp filer: %s"
-msgstr "Using NetApp filer: %s"
+msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:150
 msgid "Success getting LUN list from server"
@@ -8348,9 +8437,9 @@ msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:191
-#, fuzzy, python-format
+#, python-format
 msgid "Destroyed LUN %s"
-msgstr "Destroyed LUN %s"
+msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:227
 #, python-format
@@ -8365,24 +8454,24 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:238
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get LUN target details for the LUN %s"
-msgstr "Failed to get LUN target details for the LUN %s"
+msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:249
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get target portal for the LUN %s"
-msgstr "Failed to get target portal for the LUN %s"
+msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:252
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get target IQN for the LUN %s"
-msgstr "Failed to get target IQN for the LUN %s"
+msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:290
-#, fuzzy, python-format
+#, python-format
 msgid "Snapshot %s deletion successful"
-msgstr "Snapshot %s deletion successful"
+msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:310
 #: cinder/volume/drivers/netapp/iscsi.py:557
@@ -8536,9 +8625,9 @@ msgid "Api version could not be determined."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:1190
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get vol with required size for volume: %s"
-msgstr "Failed to get vol with required size for volume: %s"
+msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:1299
 #, python-format
@@ -8692,7 +8781,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:460
 #, python-format
 msgid "Converted to raw, but format is now %s"
-msgstr ""
+msgstr "Converted to raw, but format is now %s"
 
 #: cinder/volume/drivers/netapp/nfs.py:470
 #, python-format
@@ -9287,9 +9376,9 @@ msgid "Error deleting vol with label %s."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:105
-#, fuzzy, python-format
+#, python-format
 msgid "Volume %s does not exist in Nexenta SA"
-msgstr "Volume %s does not exist in Nexenta SA"
+msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:151
 #, python-format
@@ -9365,7 +9454,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9423,9 +9512,9 @@ msgid "Auto switching to HTTPS connection to %s"
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:96
-#, fuzzy, python-format
+#, python-format
 msgid "Got response: %s"
-msgstr "Got response: %s"
+msgstr ""
 
 #: cinder/volume/drivers/nexenta/nfs.py:85
 #, python-format
@@ -9488,288 +9577,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
-#, fuzzy, python-format
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
+#, python-format
 msgid "Volume (%s) already exists on array"
-msgstr "Volume (%s) already exists on array"
+msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10163,7 +10256,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10323,7 +10416,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10443,62 +10536,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10781,9 +10874,9 @@ msgid "Filtered hubs: %s"
 msgstr ""
 
 #: cinder/volume/drivers/windows/windows.py:102
-#, fuzzy, python-format
+#, python-format
 msgid "Creating folder %s "
-msgstr "Creating folder %s "
+msgstr ""
 
 #: cinder/volume/drivers/windows/windows_utils.py:47
 #, python-format
@@ -10810,7 +10903,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10818,35 +10911,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10854,42 +10952,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/en_GB/LC_MESSAGES/cinder.po b/cinder/locale/en_GB/LC_MESSAGES/cinder.po
index f527e7845..72c26924f 100644
--- a/cinder/locale/en_GB/LC_MESSAGES/cinder.po
+++ b/cinder/locale/en_GB/LC_MESSAGES/cinder.po
@@ -1,16 +1,21 @@
-# English (United Kingdom) translation for cinder
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the cinder package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+# English (United Kingdom) translations for cinder.
+# Copyright (C) 2014 ORGANIZATION
+# This file is distributed under the same license as the cinder project.
 #
-msgid ""
-msgstr ""
-"Project-Id-Version:  cinder\n"
-"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-03-29 06:10+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"
+# Translators:
+# Abigail Brady <morwen@evilmagic.org>, Bastien Nocera <hadess@hadess.net>,
+# 2011
+# Andi Chandler <andi@gowling.com>, 2013
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011
+msgid ""
+msgstr ""
+"Project-Id-Version:  Cinder\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
+"Language-Team: English (United Kingdom) "
+"(http://www.transifex.com/projects/p/cinder/language/en_GB/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -20,12 +25,12 @@ msgstr ""
 #: cinder/context.py:63
 #, python-format
 msgid "Arguments dropped when creating context: %s"
-msgstr ""
+msgstr "Arguments dropped when creating context: %s"
 
 #: cinder/context.py:107
 #, python-format
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
-msgstr ""
+msgstr "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 
 #: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
@@ -33,12 +38,12 @@ msgstr "An unknown exception occurred."
 
 #: cinder/exception.py:88
 msgid "Exception in string format operation"
-msgstr ""
+msgstr "Exception in string format operation"
 
 #: cinder/exception.py:107
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
-msgstr ""
+msgstr "Bad or unexpected response from the storage volume backend API: %(data)s"
 
 #: cinder/exception.py:112
 #, python-format
@@ -71,7 +76,7 @@ msgstr "Policy doesn't allow %(action)s to be performed."
 #: cinder/exception.py:137
 #, python-format
 msgid "Not authorized for image %(image_id)s."
-msgstr ""
+msgstr "Not authorised for image %(image_id)s."
 
 #: cinder/exception.py:141
 msgid "Volume driver not ready."
@@ -89,10 +94,10 @@ msgstr ""
 #: cinder/exception.py:154
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
-msgstr ""
+msgstr "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 
 #: cinder/exception.py:159
-#, fuzzy, python-format
+#, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr "Volume %(volume_id)s is still attached, detach volume first."
 
@@ -101,9 +106,8 @@ msgid "Failed to load data into json format"
 msgstr "Failed to load data into json format"
 
 #: cinder/exception.py:167
-#, fuzzy
 msgid "The results are invalid."
-msgstr "The request is invalid."
+msgstr "The results are invalid."
 
 #: cinder/exception.py:171
 #, python-format
@@ -147,36 +151,36 @@ msgstr ""
 
 #: cinder/exception.py:206
 msgid "Service is unavailable at this time."
-msgstr ""
+msgstr "Service is unavailable at this time."
 
 #: cinder/exception.py:210
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
-msgstr ""
+msgstr "Image %(image_id)s is unacceptable: %(reason)s"
 
 #: cinder/exception.py:214
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
-msgstr ""
+msgstr "The device in the path %(path)s is unavailable: %(reason)s"
 
 #: cinder/exception.py:218
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
-msgstr ""
+msgstr "Expected a uuid but received %(uuid)s."
 
 #: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
-msgstr ""
+msgstr "Resource could not be found."
 
 #: cinder/exception.py:228
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
-msgstr ""
+msgstr "Volume %(volume_id)s could not be found."
 
 #: cinder/exception.py:232
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
-msgstr ""
+msgstr "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 
 #: cinder/exception.py:237
 #, python-format
@@ -184,6 +188,8 @@ msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
 msgstr ""
+"Volume %(volume_id)s has no administration metadata with key "
+"%(metadata_key)s."
 
 #: cinder/exception.py:242
 #, python-format
@@ -198,17 +204,17 @@ msgstr ""
 #: cinder/exception.py:250
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
-msgstr ""
+msgstr "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 
 #: cinder/exception.py:255
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
-msgstr ""
+msgstr "Volume type %(volume_type_id)s could not be found."
 
 #: cinder/exception.py:259
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
-msgstr ""
+msgstr "Volume type with name %(volume_type_name)s could not be found."
 
 #: cinder/exception.py:264
 #, python-format
@@ -216,6 +222,8 @@ msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
+"Volume Type %(volume_type_id)s has no extra specs with key "
+"%(extra_specs_key)s."
 
 #: cinder/exception.py:269
 #, python-format
@@ -227,62 +235,62 @@ msgstr ""
 #: cinder/exception.py:274
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
-msgstr ""
+msgstr "Snapshot %(snapshot_id)s could not be found."
 
 #: cinder/exception.py:278
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
-msgstr ""
+msgstr "deleting volume %(volume_name)s that has snapshot"
 
 #: cinder/exception.py:282
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
-msgstr ""
+msgstr "deleting snapshot %(snapshot_name)s that has dependent volumes"
 
 #: cinder/exception.py:287
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
-msgstr ""
+msgstr "No target id found for volume %(volume_id)s."
 
 #: cinder/exception.py:291
 #, python-format
 msgid "Invalid image href %(image_href)s."
-msgstr ""
+msgstr "Invalid image href %(image_href)s."
 
 #: cinder/exception.py:295
 #, python-format
 msgid "Image %(image_id)s could not be found."
-msgstr ""
+msgstr "Image %(image_id)s could not be found."
 
 #: cinder/exception.py:299
 #, python-format
 msgid "Service %(service_id)s could not be found."
-msgstr ""
+msgstr "Service %(service_id)s could not be found."
 
 #: cinder/exception.py:303
 #, python-format
 msgid "Host %(host)s could not be found."
-msgstr ""
+msgstr "Host %(host)s could not be found."
 
 #: cinder/exception.py:307
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
-msgstr ""
+msgstr "Scheduler Host Filter %(filter_name)s could not be found."
 
 #: cinder/exception.py:311
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
-msgstr ""
+msgstr "Scheduler Host Weigher %(weigher_name)s could not be found."
 
 #: cinder/exception.py:315
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
-msgstr ""
+msgstr "Could not find binary %(binary)s on host %(host)s."
 
 #: cinder/exception.py:319
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
-msgstr ""
+msgstr "Invalid reservation expiration %(expire)s."
 
 #: cinder/exception.py:323
 #, python-format
@@ -290,55 +298,57 @@ msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
+"Change would make usage less than 0 for the following resources: "
+"%(unders)s"
 
 #: cinder/exception.py:328
 msgid "Quota could not be found"
-msgstr ""
+msgstr "Quota could not be found"
 
 #: cinder/exception.py:332
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
-msgstr ""
+msgstr "Unknown quota resources %(unknown)s."
 
 #: cinder/exception.py:336
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
-msgstr ""
+msgstr "Quota for project %(project_id)s could not be found."
 
 #: cinder/exception.py:340
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
-msgstr ""
+msgstr "Quota class %(class_name)s could not be found."
 
 #: cinder/exception.py:344
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
-msgstr ""
+msgstr "Quota usage for project %(project_id)s could not be found."
 
 #: cinder/exception.py:348
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
-msgstr ""
+msgstr "Quota reservation %(uuid)s could not be found."
 
 #: cinder/exception.py:352
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
-msgstr ""
+msgstr "Quota exceeded for resources: %(overs)s"
 
 #: cinder/exception.py:356
 #, python-format
 msgid "File %(file_path)s could not be found."
-msgstr ""
+msgstr "File %(file_path)s could not be found."
 
 #: cinder/exception.py:365
 #, python-format
 msgid "Volume Type %(id)s already exists."
-msgstr ""
+msgstr "Volume Type %(id)s already exists."
 
 #: cinder/exception.py:369
 #, python-format
 msgid "Volume type encryption for type %(type_id)s already exists."
-msgstr ""
+msgstr "Volume type encryption for type %(type_id)s already exists."
 
 #: cinder/exception.py:373
 #, python-format
@@ -348,27 +358,27 @@ msgstr ""
 #: cinder/exception.py:377
 #, python-format
 msgid "Malformed message body: %(reason)s"
-msgstr ""
+msgstr "Malformed message body: %(reason)s"
 
 #: cinder/exception.py:381
 #, python-format
 msgid "Could not find config at %(path)s"
-msgstr ""
+msgstr "Could not find config at %(path)s"
 
 #: cinder/exception.py:385
-#, fuzzy, python-format
+#, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "Could not find parameter %(param)s"
 
 #: cinder/exception.py:389
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
-msgstr ""
+msgstr "Could not load paste app '%(name)s' from %(path)s"
 
 #: cinder/exception.py:393
 #, python-format
 msgid "No valid host was found. %(reason)s"
-msgstr ""
+msgstr "No valid host was found. %(reason)s"
 
 #: cinder/exception.py:402
 #, python-format
@@ -385,37 +395,37 @@ msgstr ""
 #: cinder/exception.py:415
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
-msgstr ""
+msgstr "Maximum number of volumes allowed (%(allowed)d) exceeded"
 
 #: cinder/exception.py:419
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
-msgstr ""
+msgstr "Maximum number of snapshots allowed (%(allowed)d) exceeded"
 
 #: cinder/exception.py:423
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
-msgstr ""
+msgstr "Detected more than one volume with name %(vol_name)s"
 
 #: cinder/exception.py:427
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
-msgstr ""
+msgstr "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 
 #: cinder/exception.py:432
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
-msgstr ""
+msgstr "Unknown or unsupported command %(cmd)s"
 
 #: cinder/exception.py:436
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
-msgstr ""
+msgstr "Malformed response to command %(cmd)s: %(reason)s"
 
 #: cinder/exception.py:440
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
-msgstr ""
+msgstr "Operation failed with status=%(status)s. Full dump: %(data)s"
 
 #: cinder/exception.py:444
 #, python-format
@@ -423,6 +433,8 @@ msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
+"Glance metadata cannot be updated, key %(key)s exists for volume id "
+"%(volume_id)s"
 
 #: cinder/exception.py:449
 #, python-format
@@ -450,9 +462,9 @@ msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:469
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to copy image to volume: %(reason)s"
-msgstr "Failed to copy image to volume: %(reason)s"
+msgstr ""
 
 #: cinder/exception.py:473
 msgid "Invalid Ceph args provided for backup rbd operation"
@@ -477,16 +489,16 @@ msgstr ""
 #: cinder/exception.py:493
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
-msgstr ""
+msgstr "Backup %(backup_id)s could not be found."
 
 #: cinder/exception.py:497
 msgid "Failed to identify volume backend."
 msgstr ""
 
 #: cinder/exception.py:501
-#, fuzzy, python-format
+#, python-format
 msgid "Invalid backup: %(reason)s"
-msgstr "Invalid backup: %(reason)s"
+msgstr ""
 
 #: cinder/exception.py:505
 #, python-format
@@ -606,37 +618,37 @@ msgid "Zadara Cinder Driver exception."
 msgstr ""
 
 #: cinder/exception.py:611
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to create server object for initiator %(name)s"
 msgstr "Unable to create server object for initiator %(name)s"
 
 #: cinder/exception.py:615
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
-msgstr ""
+msgstr "Unable to find server object for initiator %(name)s"
 
 #: cinder/exception.py:619
 msgid "Unable to find any active VPSA controller"
-msgstr ""
+msgstr "Unable to find any active VPSA controller"
 
 #: cinder/exception.py:623
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
-msgstr ""
+msgstr "Failed to retrieve attachments for volume %(name)s"
 
 #: cinder/exception.py:627
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
-msgstr ""
+msgstr "Invalid attachment info for volume %(name)s: %(reason)s"
 
 #: cinder/exception.py:631
 #, python-format
 msgid "Bad HTTP response status %(status)s"
-msgstr ""
+msgstr "Bad HTTP response status %(status)s"
 
 #: cinder/exception.py:636
 msgid "Bad response from SolidFire API"
-msgstr ""
+msgstr "Bad response from SolidFire API"
 
 #: cinder/exception.py:640
 msgid "SolidFire Cinder Driver exception"
@@ -645,40 +657,38 @@ msgstr ""
 #: cinder/exception.py:644
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
-msgstr ""
+msgstr "Error in SolidFire API response: data=%(data)s"
 
 #: cinder/exception.py:648
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
-msgstr ""
+msgstr "Unable to locate account %(account_name)s on Solidfire device"
 
 #: cinder/exception.py:654
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
-msgstr ""
+msgstr "Invalid 3PAR Domain: %(err)s"
 
 #: cinder/exception.py:659
-#, fuzzy
 msgid "Unknown NFS exception"
 msgstr "Unknown NFS exception"
 
 #: cinder/exception.py:663
 msgid "No mounted NFS shares found"
-msgstr ""
+msgstr "No mounted NFS shares found"
 
 #: cinder/exception.py:667 cinder/exception.py:680
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
-msgstr ""
+msgstr "There is no share which can host %(volume_size)sG"
 
 #: cinder/exception.py:672
-#, fuzzy
 msgid "Unknown Gluster exception"
 msgstr "Unknown Gluster exception"
 
 #: cinder/exception.py:676
 msgid "No mounted Gluster shares found"
-msgstr ""
+msgstr "No mounted Gluster shares found"
 
 #: cinder/exception.py:684
 #, python-format
@@ -729,44 +739,44 @@ msgstr ""
 
 #: cinder/manager.py:128
 msgid "Notifying Schedulers of capabilities ..."
-msgstr ""
+msgstr "Notifying Schedulers of capabilities ..."
 
 #: cinder/policy.py:30
 msgid "JSON file representing policy"
-msgstr ""
+msgstr "JSON file representing policy"
 
 #: cinder/policy.py:33
 msgid "Rule checked when requested rule is not found"
-msgstr ""
+msgstr "Rule checked when requested rule is not found"
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -784,18 +794,20 @@ msgid ""
 "Quota exceeded for %(s_pid)s, tried to create volume (%(d_consumed)d "
 "volumes already consumed)"
 msgstr ""
+"Quota exceeded for %(s_pid)s, tried to create volume (%(d_consumed)d "
+"volumes already consumed)"
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
-msgstr ""
+msgstr "Starting %(topic)s node (version %(version_string)s)"
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -804,40 +816,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
-msgstr ""
+msgstr "Service killed that has no database entry"
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
-msgstr ""
+msgstr "The service database object disappeared, Recreating it."
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
-msgstr ""
+msgstr "Recovered model server connection!"
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
-msgstr ""
+msgstr "model server went away"
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
-msgstr ""
+msgstr "serve() can only be called once"
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
-#, fuzzy
 msgid "Full set of CONF:"
 msgstr "Full set of CONF:"
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -854,12 +865,12 @@ msgstr ""
 
 #: cinder/utils.py:213
 msgid "Specify a password or private_key"
-msgstr ""
+msgstr "Specify a password or private_key"
 
 #: cinder/utils.py:229
 #, python-format
 msgid "Error connecting via ssh: %s"
-msgstr ""
+msgstr "Error connecting via ssh: %s"
 
 #: cinder/utils.py:413
 #, python-format
@@ -874,7 +885,7 @@ msgstr "backend %s"
 #: cinder/utils.py:699
 #, python-format
 msgid "Could not remove tmpdir: %s"
-msgstr ""
+msgstr "Could not remove tmpdir: %s"
 
 #: cinder/utils.py:760
 #, python-format
@@ -884,7 +895,7 @@ msgstr ""
 #: cinder/utils.py:782
 #, python-format
 msgid "%s is not a string or unicode"
-msgstr ""
+msgstr "%s is not a string or unicode"
 
 #: cinder/utils.py:786
 #, python-format
@@ -894,20 +905,20 @@ msgstr ""
 #: cinder/utils.py:791
 #, python-format
 msgid "%(name)s has more than %(max_length)s characters."
-msgstr ""
+msgstr "%(name)s has more than %(max_length)s characters."
 
 #: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find cert_file : %s"
 msgstr "Unable to find cert_file : %s"
 
 #: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find ca_file : %s"
 msgstr "Unable to find ca_file : %s"
 
 #: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find key_file : %s"
 msgstr "Unable to find key_file : %s"
 
@@ -916,11 +927,13 @@ msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 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:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
-msgstr ""
+msgstr "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 
 #: cinder/wsgi.py:215
 #, python-format
@@ -929,15 +942,15 @@ msgstr ""
 
 #: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
-msgstr ""
+msgstr "Stopping WSGI server."
 
 #: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
-msgstr ""
+msgstr "WSGI server has stopped."
 
 #: cinder/wsgi.py:322
 msgid "You must implement __call__"
-msgstr ""
+msgstr "You must implement __call__"
 
 #: cinder/api/auth.py:26
 msgid ""
@@ -953,83 +966,83 @@ msgstr ""
 
 #: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:282
 msgid "limit param must be an integer"
-msgstr ""
+msgstr "limit param must be an integer"
 
 #: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:279
 msgid "limit param must be positive"
-msgstr ""
+msgstr "limit param must be positive"
 
 #: cinder/api/common.py:120
 msgid "offset param must be an integer"
-msgstr ""
+msgstr "offset param must be an integer"
 
 #: cinder/api/common.py:134
 msgid "offset param must be positive"
-msgstr ""
+msgstr "offset param must be positive"
 
 #: cinder/api/common.py:162
 #, python-format
 msgid "marker [%s] not found"
-msgstr ""
+msgstr "marker [%s] not found"
 
 #: cinder/api/common.py:189
 #, python-format
 msgid "href %s does not contain version"
-msgstr ""
+msgstr "href %s does not contain version"
 
 #: cinder/api/extensions.py:183
 msgid "Initializing extension manager."
-msgstr ""
+msgstr "Initialising extension manager."
 
 #: cinder/api/extensions.py:198
 #, python-format
 msgid "Loaded extension: %s"
-msgstr ""
+msgstr "Loaded extension: %s"
 
 #: cinder/api/extensions.py:236
 #, python-format
 msgid "Ext name: %s"
-msgstr ""
+msgstr "Ext name: %s"
 
 #: cinder/api/extensions.py:237
 #, python-format
 msgid "Ext alias: %s"
-msgstr ""
+msgstr "Ext alias: %s"
 
 #: cinder/api/extensions.py:238
 #, python-format
 msgid "Ext description: %s"
-msgstr ""
+msgstr "Ext description: %s"
 
 #: cinder/api/extensions.py:240
 #, python-format
 msgid "Ext namespace: %s"
-msgstr ""
+msgstr "Ext namespace: %s"
 
 #: cinder/api/extensions.py:241
 #, python-format
 msgid "Ext updated: %s"
-msgstr ""
+msgstr "Ext updated: %s"
 
 #: cinder/api/extensions.py:243
 #, python-format
 msgid "Exception loading extension: %s"
-msgstr ""
+msgstr "Exception loading extension: %s"
 
 #: cinder/api/extensions.py:257
 #, python-format
 msgid "Loading extension %s"
-msgstr ""
+msgstr "Loading extension %s"
 
 #: cinder/api/extensions.py:263
 #, python-format
 msgid "Calling extension factory %s"
-msgstr ""
+msgstr "Calling extension factory %s"
 
 #: cinder/api/extensions.py:277
 #, python-format
 msgid "osapi_volume_extension is set to deprecated path: %s"
-msgstr ""
+msgstr "osapi_volume_extension is set to deprecated path: %s"
 
 #: cinder/api/extensions.py:279
 #, python-format
@@ -1037,21 +1050,23 @@ msgid ""
 "Please set your flag or cinder.conf settings for osapi_volume_extension "
 "to: %s"
 msgstr ""
+"Please set your flag or cinder.conf settings for osapi_volume_extension "
+"to: %s"
 
 #: cinder/api/extensions.py:288
 #, python-format
 msgid "Failed to load extension %(ext_factory)s: %(exc)s"
-msgstr ""
+msgstr "Failed to load extension %(ext_factory)s: %(exc)s"
 
 #: cinder/api/extensions.py:357
 #, python-format
 msgid "Failed to load extension %(classpath)s: %(exc)s"
-msgstr ""
+msgstr "Failed to load extension %(classpath)s: %(exc)s"
 
 #: cinder/api/extensions.py:382
 #, python-format
 msgid "Failed to load extension %(ext_name)s: %(exc)s"
-msgstr ""
+msgstr "Failed to load extension %(ext_name)s: %(exc)s"
 
 #: cinder/api/sizelimit.py:25
 msgid ""
@@ -1061,66 +1076,66 @@ msgstr ""
 
 #: cinder/api/xmlutil.py:266
 msgid "element is not a child"
-msgstr ""
+msgstr "element is not a child"
 
 #: cinder/api/xmlutil.py:463
 msgid "root element selecting a list"
-msgstr ""
+msgstr "root element selecting a list"
 
 #: cinder/api/xmlutil.py:786
 #, python-format
 msgid "Template tree mismatch; adding slave %(slavetag)s to master %(mastertag)s"
-msgstr ""
+msgstr "Template tree mismatch; adding slave %(slavetag)s to master %(mastertag)s"
 
 #: cinder/api/xmlutil.py:907
 msgid "subclasses must implement construct()!"
-msgstr ""
+msgstr "subclasses must implement construct()!"
 
 #: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
-msgstr ""
+msgstr "Updating %(resource)s '%(id)s' with '%(update)r'"
 
 #: cinder/api/contrib/backups.py:161
 #, python-format
 msgid "show called for member %s"
-msgstr ""
+msgstr "show called for member %s"
 
 #: cinder/api/contrib/backups.py:173
 #, python-format
 msgid "delete called for member %s"
-msgstr ""
+msgstr "delete called for member %s"
 
 #: cinder/api/contrib/backups.py:176
 #, python-format
 msgid "Delete backup with id: %s"
-msgstr ""
+msgstr "Delete backup with id: %s"
 
 #: cinder/api/contrib/backups.py:218
 #, python-format
 msgid "Creating new backup %s"
-msgstr ""
+msgstr "Creating new backup %s"
 
 #: cinder/api/contrib/backups.py:228 cinder/api/contrib/backups.py:260
 #: cinder/api/contrib/volume_transfer.py:157
 #: cinder/api/contrib/volume_transfer.py:193
 msgid "Incorrect request body format"
-msgstr ""
+msgstr "Incorrect request body format"
 
 #: cinder/api/contrib/backups.py:234
 #, python-format
 msgid "Creating backup of volume %(volume_id)s in container %(container)s"
-msgstr ""
+msgstr "Creating backup of volume %(volume_id)s in container %(container)s"
 
 #: cinder/api/contrib/backups.py:257
 #, python-format
 msgid "Restoring backup %(backup_id)s (%(body)s)"
-msgstr ""
+msgstr "Restoring backup %(backup_id)s (%(body)s)"
 
 #: cinder/api/contrib/backups.py:267
 #, python-format
 msgid "Restoring backup %(backup_id)s to volume %(volume_id)s"
-msgstr ""
+msgstr "Restoring backup %(backup_id)s to volume %(volume_id)s"
 
 #: cinder/api/contrib/backups.py:300
 #, python-format
@@ -1153,39 +1168,39 @@ msgstr ""
 
 #: cinder/api/contrib/extended_snapshot_attributes.py:60
 msgid "Snapshot not found."
-msgstr ""
+msgstr "Snapshot not found."
 
 #: cinder/api/contrib/hosts.py:86 cinder/api/openstack/wsgi.py:237
 msgid "cannot understand XML"
-msgstr ""
+msgstr "cannot understand XML"
 
 #: cinder/api/contrib/hosts.py:136
 #, python-format
 msgid "Host '%s' could not be found."
-msgstr ""
+msgstr "Host '%s' could not be found."
 
 #: cinder/api/contrib/hosts.py:165
 #, python-format
 msgid "Invalid status: '%s'"
-msgstr ""
+msgstr "Invalid status: '%s'"
 
 #: cinder/api/contrib/hosts.py:168
 #, python-format
 msgid "Invalid update setting: '%s'"
-msgstr ""
+msgstr "Invalid update setting: '%s'"
 
 #: cinder/api/contrib/hosts.py:180
 #, python-format
 msgid "Setting host %(host)s to %(state)s."
-msgstr ""
+msgstr "Setting host %(host)s to %(state)s."
 
 #: cinder/api/contrib/hosts.py:206
 msgid "Describe-resource is admin only functionality"
-msgstr ""
+msgstr "Describe-resource is admin only functionality"
 
 #: cinder/api/contrib/hosts.py:214
 msgid "Host not found"
-msgstr ""
+msgstr "Host not found"
 
 #: cinder/api/contrib/qos_specs_manage.py:110
 msgid "Please specify a name for QoS specs."
@@ -1222,7 +1237,7 @@ msgstr ""
 
 #: cinder/api/contrib/quotas.py:68
 msgid "Quota limit must be -1 or greater."
-msgstr ""
+msgstr "Quota limit must be -1 or greater."
 
 #: cinder/api/contrib/quotas.py:105
 msgid "Missing required element quota_set in request body."
@@ -1235,7 +1250,7 @@ msgstr ""
 
 #: cinder/api/contrib/scheduler_hints.py:36
 msgid "Malformed scheduler_hints attribute"
-msgstr ""
+msgstr "Malformed scheduler_hints attribute"
 
 #: cinder/api/contrib/services.py:91
 msgid ""
@@ -1269,19 +1284,19 @@ msgstr ""
 
 #: cinder/api/contrib/types_extra_specs.py:101
 msgid "Request body empty"
-msgstr ""
+msgstr "Request body empty"
 
 #: cinder/api/contrib/types_extra_specs.py:105
 #: cinder/api/v1/snapshot_metadata.py:75 cinder/api/v1/volume_metadata.py:75
 #: cinder/api/v2/snapshot_metadata.py:75 cinder/api/v2/volume_metadata.py:74
 msgid "Request body and URI mismatch"
-msgstr ""
+msgstr "Request body and URI mismatch"
 
 #: cinder/api/contrib/types_extra_specs.py:108
 #: cinder/api/v1/snapshot_metadata.py:79 cinder/api/v1/volume_metadata.py:79
 #: cinder/api/v2/snapshot_metadata.py:79 cinder/api/v2/volume_metadata.py:78
 msgid "Request body contains too many items"
-msgstr ""
+msgstr "Request body contains too many items"
 
 #: cinder/api/contrib/types_extra_specs.py:152
 msgid ""
@@ -1320,7 +1335,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_actions.py:230
 msgid "No image_name was specified in request."
-msgstr ""
+msgstr "No image_name was specified in request."
 
 #: cinder/api/contrib/volume_actions.py:238
 msgid "Bad value for 'force' parameter."
@@ -1330,26 +1345,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1380,9 +1407,9 @@ msgid "Creating new volume transfer %s"
 msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:162
-#, fuzzy, python-format
+#, python-format
 msgid "Creating transfer of volume %s"
-msgstr "Creating transfer of volume %s"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:183
 #, python-format
@@ -1455,7 +1482,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1465,17 +1492,17 @@ msgstr ""
 
 #: cinder/api/middleware/auth.py:112
 msgid "Invalid service catalog json."
-msgstr ""
+msgstr "Invalid service catalogue json."
 
 #: cinder/api/middleware/fault.py:44
 #, python-format
 msgid "Caught error: %s"
-msgstr ""
+msgstr "Caught error: %s"
 
 #: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:978
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
-msgstr ""
+msgstr "%(url)s returned with HTTP %(status)d"
 
 #: cinder/api/middleware/fault.py:69
 #, python-format
@@ -1485,16 +1512,16 @@ msgstr ""
 #: cinder/api/middleware/sizelimit.py:55 cinder/api/middleware/sizelimit.py:64
 #: cinder/api/middleware/sizelimit.py:78
 msgid "Request is too large."
-msgstr ""
+msgstr "Request is too large."
 
 #: cinder/api/openstack/__init__.py:69
 msgid "Must specify an ExtensionManager class"
-msgstr ""
+msgstr "Must specify an ExtensionManager class"
 
 #: cinder/api/openstack/__init__.py:80
 #, python-format
 msgid "Extended resource: %s"
-msgstr ""
+msgstr "Extended resource: %s"
 
 #: cinder/api/openstack/__init__.py:104
 #, python-format
@@ -1502,11 +1529,13 @@ msgid ""
 "Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
 "resource"
 msgstr ""
+"Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
+"resource"
 
 #: cinder/api/openstack/__init__.py:110
 #, python-format
 msgid "Extension %(ext_name)s extending resource: %(collection)s"
-msgstr ""
+msgstr "Extension %(ext_name)s extending resource: %(collection)s"
 
 #: cinder/api/openstack/__init__.py:126
 msgid ""
@@ -1522,43 +1551,43 @@ msgstr ""
 
 #: cinder/api/openstack/wsgi.py:212 cinder/api/openstack/wsgi.py:628
 msgid "cannot understand JSON"
-msgstr ""
+msgstr "cannot understand JSON"
 
 #: cinder/api/openstack/wsgi.py:633
 msgid "too many body keys"
-msgstr ""
+msgstr "too many body keys"
 
 #: cinder/api/openstack/wsgi.py:671
 #, python-format
 msgid "Exception handling resource: %s"
-msgstr ""
+msgstr "Exception handling resource: %s"
 
 #: cinder/api/openstack/wsgi.py:676
 #, python-format
 msgid "Fault thrown: %s"
-msgstr ""
+msgstr "Fault thrown: %s"
 
 #: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "HTTP exception thrown: %s"
-msgstr ""
+msgstr "HTTP exception thrown: %s"
 
 #: cinder/api/openstack/wsgi.py:787
 msgid "Empty body provided in request"
-msgstr ""
+msgstr "Empty body provided in request"
 
 #: cinder/api/openstack/wsgi.py:793
 msgid "Unrecognized Content-Type provided in request"
-msgstr ""
+msgstr "Unrecognised Content-Type provided in request"
 
 #: cinder/api/openstack/wsgi.py:797
 msgid "No Content-Type provided in request"
-msgstr ""
+msgstr "No Content-Type provided in request"
 
 #: cinder/api/openstack/wsgi.py:908
 #, python-format
 msgid "There is no such action: %s"
-msgstr ""
+msgstr "There is no such action: %s"
 
 #: cinder/api/openstack/wsgi.py:911 cinder/api/openstack/wsgi.py:924
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
@@ -1570,20 +1599,20 @@ msgstr ""
 #: cinder/api/v2/volume_metadata.py:52 cinder/api/v2/volume_metadata.py:70
 #: cinder/api/v2/volume_metadata.py:95 cinder/api/v2/volume_metadata.py:120
 msgid "Malformed request body"
-msgstr ""
+msgstr "Malformed request body"
 
 #: cinder/api/openstack/wsgi.py:921
 msgid "Unsupported Content-Type"
-msgstr ""
+msgstr "Unsupported Content-Type"
 
 #: cinder/api/openstack/wsgi.py:933
 msgid "Malformed request url"
-msgstr ""
+msgstr "Malformed request url"
 
 #: cinder/api/openstack/wsgi.py:981
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
-msgstr ""
+msgstr "%(url)s returned a fault: %(e)s"
 
 #: cinder/api/openstack/volume/__init__.py:25
 msgid ""
@@ -1603,18 +1632,19 @@ msgid ""
 "Only %(value)s %(verb)s request(s) can be made to %(uri)s every "
 "%(unit_string)s."
 msgstr ""
+"Only %(value)s %(verb)s request(s) can be made to %(uri)s every "
+"%(unit_string)s."
 
 #: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
-msgstr ""
+msgstr "This request was rate-limited."
 
 #: cinder/api/v1/snapshot_metadata.py:37 cinder/api/v1/snapshot_metadata.py:117
 #: cinder/api/v1/snapshot_metadata.py:156 cinder/api/v2/snapshot_metadata.py:37
 #: cinder/api/v2/snapshot_metadata.py:117
 #: cinder/api/v2/snapshot_metadata.py:156
-#, fuzzy
 msgid "snapshot does not exist"
-msgstr "snapshot does not exist"
+msgstr ""
 
 #: cinder/api/v1/snapshot_metadata.py:139
 #: cinder/api/v1/snapshot_metadata.py:149 cinder/api/v1/volume_metadata.py:139
@@ -1622,12 +1652,12 @@ msgstr "snapshot does not exist"
 #: cinder/api/v2/snapshot_metadata.py:149 cinder/api/v2/volume_metadata.py:138
 #: cinder/api/v2/volume_metadata.py:148
 msgid "Metadata item was not found"
-msgstr ""
+msgstr "Metadata item was not found"
 
 #: cinder/api/v1/snapshots.py:119 cinder/api/v2/snapshots.py:120
 #, python-format
 msgid "Delete snapshot with id: %s"
-msgstr ""
+msgstr "Delete snapshot with id: %s"
 
 #: cinder/api/v1/snapshots.py:173 cinder/api/v2/snapshots.py:184
 msgid "'volume_id' must be specified"
@@ -1636,33 +1666,33 @@ msgstr ""
 #: cinder/api/v1/snapshots.py:182 cinder/api/v2/snapshots.py:193
 #, python-format
 msgid "Create snapshot from volume %s"
-msgstr ""
+msgstr "Create snapshot from volume %s"
 
 #: cinder/api/v1/snapshots.py:186 cinder/api/v2/snapshots.py:202
 #, python-format
 msgid "Invalid value '%s' for force. "
-msgstr ""
+msgstr "Invalid value '%s' for force. "
 
 #: cinder/api/v1/volume_metadata.py:37 cinder/api/v1/volume_metadata.py:117
 #: cinder/api/v1/volume_metadata.py:156 cinder/api/v2/volume_metadata.py:36
 #: cinder/api/v2/volume_metadata.py:116 cinder/api/v2/volume_metadata.py:155
 msgid "volume does not exist"
-msgstr ""
+msgstr "volume does not exist"
 
 #: cinder/api/v1/volumes.py:114
 #, python-format
 msgid "vol=%s"
-msgstr ""
+msgstr "vol=%s"
 
 #: cinder/api/v1/volumes.py:293 cinder/api/v2/volumes.py:181
 #, python-format
 msgid "Delete volume with id: %s"
-msgstr ""
+msgstr "Delete volume with id: %s"
 
 #: cinder/api/v1/volumes.py:347 cinder/api/v1/volumes.py:351
 #: cinder/api/v2/volumes.py:251 cinder/api/v2/volumes.py:255
 msgid "Invalid imageRef provided."
-msgstr ""
+msgstr "Invalid imageRef provided."
 
 #: cinder/api/v1/volumes.py:391 cinder/api/v2/volumes.py:308
 #, python-format
@@ -1677,12 +1707,12 @@ msgstr ""
 #: cinder/api/v1/volumes.py:415 cinder/api/v2/volumes.py:331
 #, python-format
 msgid "Create volume of %s GB"
-msgstr ""
+msgstr "Create volume of %s GB"
 
 #: cinder/api/v1/volumes.py:504
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
-msgstr ""
+msgstr "Removing options '%(bad_options)s' from query"
 
 #: cinder/api/v2/snapshots.py:111 cinder/api/v2/snapshots.py:126
 #: cinder/api/v2/snapshots.py:267
@@ -1702,53 +1732,51 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
-msgstr ""
+msgstr "Removing options '%s' from query"
 
 #: cinder/backup/api.py:66
-#, fuzzy
 msgid "Backup status must be available or error"
-msgstr "Backup status must be available or error"
+msgstr ""
 
-#: cinder/backup/api.py:115
-#, fuzzy
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
-msgstr "Volume to be backed up must be available"
+msgstr ""
 
-#: cinder/backup/api.py:150
-#, fuzzy
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
-msgstr "Backup status must be available"
+msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
-msgstr ""
+msgstr "Backup to be restored has invalid size"
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
-msgstr ""
+msgstr "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 
-#: cinder/backup/api.py:180
-#, fuzzy
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
-msgstr "Volume to be restored to must be available"
+msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
+"volume size %(volume_size)d is too small to restore backup of size "
+"%(size)d."
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
-msgstr ""
+msgstr "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2030,7 +2058,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2095,7 +2123,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2106,243 +2134,302 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:463
+#, python-format
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:474
+#, python-format
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:492
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Pipe1 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:506
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Pipe2 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
+#, python-format
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:702
 #, python-format
-msgid "Creating base image='%s'"
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
 #, python-format
 msgid "unsupported compression algorithm: %s"
-msgstr ""
+msgstr "unsupported compression algorithm: %s"
 
 #: cinder/backup/drivers/swift.py:122
 #, python-format
@@ -2352,17 +2439,17 @@ msgstr ""
 #: cinder/backup/drivers/swift.py:140
 #, python-format
 msgid "_create_container started, container: %(container)s,backup: %(backup_id)s"
-msgstr ""
+msgstr "_create_container started, container: %(container)s,backup: %(backup_id)s"
 
 #: cinder/backup/drivers/swift.py:159
 #, python-format
 msgid "_generate_swift_object_name_prefix: %s"
-msgstr ""
+msgstr "_generate_swift_object_name_prefix: %s"
 
 #: cinder/backup/drivers/swift.py:168
 #, python-format
 msgid "generated object list: %s"
-msgstr ""
+msgstr "generated object list: %s"
 
 #: cinder/backup/drivers/swift.py:179
 #, python-format
@@ -2370,6 +2457,8 @@ msgid ""
 "_write_metadata started, container name: %(container)s, metadata "
 "filename: %(filename)s"
 msgstr ""
+"_write_metadata started, container name: %(container)s, metadata "
+"filename: %(filename)s"
 
 #: cinder/backup/drivers/swift.py:197
 #, python-format
@@ -2378,10 +2467,13 @@ msgid ""
 "[%(etag)s] is not the same as MD5 of metadata file sent to swift "
 "[%(md5)s]"
 msgstr ""
+"error writing metadata file to swift, MD5 of metadata file in swift "
+"[%(etag)s] is not the same as MD5 of metadata file sent to swift "
+"[%(md5)s]"
 
 #: cinder/backup/drivers/swift.py:202
 msgid "_write_metadata finished"
-msgstr ""
+msgstr "_write_metadata finished"
 
 #: cinder/backup/drivers/swift.py:207
 #, python-format
@@ -2389,16 +2481,18 @@ msgid ""
 "_read_metadata started, container name: %(container)s, metadata filename:"
 " %(filename)s"
 msgstr ""
+"_read_metadata started, container name: %(container)s, metadata filename:"
+" %(filename)s"
 
 #: cinder/backup/drivers/swift.py:212
 #, python-format
 msgid "_read_metadata finished (%s)"
-msgstr ""
+msgstr "_read_metadata finished (%s)"
 
 #: cinder/backup/drivers/swift.py:222
-#, fuzzy, python-format
+#, python-format
 msgid "volume size %d is invalid."
-msgstr "volume size %d is invalid."
+msgstr ""
 
 #: cinder/backup/drivers/swift.py:236
 #, python-format
@@ -2407,10 +2501,13 @@ msgid ""
 "%(volume_size_bytes)d, swift object names prefix %(object_prefix)s, "
 "availability zone: %(availability_zone)s"
 msgstr ""
+"starting backup of volume: %(volume_id)s to swift, volume size: "
+"%(volume_size_bytes)d, swift object names prefix %(object_prefix)s, "
+"availability zone: %(availability_zone)s"
 
 #: cinder/backup/drivers/swift.py:260
 msgid "reading chunk of data from volume"
-msgstr ""
+msgstr "reading chunk of data from volume"
 
 #: cinder/backup/drivers/swift.py:267
 #, python-format
@@ -2418,24 +2515,26 @@ msgid ""
 "compressed %(data_size_bytes)d bytes of data to %(comp_size_bytes)d bytes"
 " using %(algorithm)s"
 msgstr ""
+"compressed %(data_size_bytes)d bytes of data to %(comp_size_bytes)d bytes"
+" using %(algorithm)s"
 
 #: cinder/backup/drivers/swift.py:276
 msgid "not compressing data"
-msgstr ""
+msgstr "not compressing data"
 
 #: cinder/backup/drivers/swift.py:280
 msgid "About to put_object"
-msgstr ""
+msgstr "About to put_object"
 
 #: cinder/backup/drivers/swift.py:286
 #, python-format
 msgid "swift MD5 for %(object_name)s: %(etag)s"
-msgstr ""
+msgstr "swift MD5 for %(object_name)s: %(etag)s"
 
 #: cinder/backup/drivers/swift.py:290
 #, python-format
 msgid "backup MD5 for %(object_name)s: %(md5)s"
-msgstr ""
+msgstr "backup MD5 for %(object_name)s: %(md5)s"
 
 #: cinder/backup/drivers/swift.py:293
 #, python-format
@@ -2443,15 +2542,17 @@ msgid ""
 "error writing object to swift, MD5 of object in swift %(etag)s is not the"
 " same as MD5 of object sent to swift %(md5)s"
 msgstr ""
+"error writing object to swift, MD5 of object in swift %(etag)s is not the"
+" same as MD5 of object sent to swift %(md5)s"
 
 #: cinder/backup/drivers/swift.py:301
 msgid "Calling eventlet.sleep(0)"
-msgstr ""
+msgstr "Calling eventlet.sleep(0)"
 
 #: cinder/backup/drivers/swift.py:319
 #, python-format
 msgid "backup %s finished."
-msgstr ""
+msgstr "backup %s finished."
 
 #: cinder/backup/drivers/swift.py:352
 #, python-format
@@ -2461,18 +2562,20 @@ msgstr ""
 #: cinder/backup/drivers/swift.py:362
 #, python-format
 msgid "v1 swift volume backup restore of %s started"
-msgstr ""
+msgstr "v1 swift volume backup restore of %s started"
 
 #: cinder/backup/drivers/swift.py:367
 #, python-format
 msgid "metadata_object_names = %s"
-msgstr ""
+msgstr "metadata_object_names = %s"
 
 #: cinder/backup/drivers/swift.py:373
 msgid ""
 "restore_backup aborted, actual swift object list in swift does not match "
 "object list stored in metadata"
 msgstr ""
+"restore_backup aborted, actual swift object list in swift does not match "
+"object list stored in metadata"
 
 #: cinder/backup/drivers/swift.py:379
 #, python-format
@@ -2480,16 +2583,18 @@ msgid ""
 "restoring object from swift. backup: %(backup_id)s, container: "
 "%(container)s, swift object name: %(object_name)s, volume: %(volume_id)s"
 msgstr ""
+"restoring object from swift. backup: %(backup_id)s, container: "
+"%(container)s, swift object name: %(object_name)s, volume: %(volume_id)s"
 
 #: cinder/backup/drivers/swift.py:395
 #, python-format
 msgid "decompressing data using %s algorithm"
-msgstr ""
+msgstr "decompressing data using %s algorithm"
 
 #: cinder/backup/drivers/swift.py:418
 #, python-format
 msgid "v1 swift volume backup restore of %s finished"
-msgstr ""
+msgstr "v1 swift volume backup restore of %s finished"
 
 #: cinder/backup/drivers/swift.py:426
 #, python-format
@@ -2497,40 +2602,42 @@ msgid ""
 "starting restore of backup %(object_prefix)s from swift container: "
 "%(container)s, to volume %(volume_id)s, backup: %(backup_id)s"
 msgstr ""
+"starting restore of backup %(object_prefix)s from swift container: "
+"%(container)s, to volume %(volume_id)s, backup: %(backup_id)s"
 
 #: cinder/backup/drivers/swift.py:440
 #, python-format
 msgid "Restoring swift backup version %s"
-msgstr ""
+msgstr "Restoring swift backup version %s"
 
 #: cinder/backup/drivers/swift.py:445
 #, python-format
 msgid "No support to restore swift backup version %s"
-msgstr ""
+msgstr "No support to restore swift backup version %s"
 
 #: cinder/backup/drivers/swift.py:461
 #, python-format
 msgid "restore %(backup_id)s to %(volume_id)s finished."
-msgstr ""
+msgstr "restore %(backup_id)s to %(volume_id)s finished."
 
 #: cinder/backup/drivers/swift.py:475
 msgid "swift error while listing objects, continuing with delete"
-msgstr ""
+msgstr "swift error while listing objects, continuing with delete"
 
 #: cinder/backup/drivers/swift.py:484
 #, python-format
 msgid "swift error while deleting object %s, continuing with delete"
-msgstr ""
+msgstr "swift error while deleting object %s, continuing with delete"
 
 #: cinder/backup/drivers/swift.py:487
 #, python-format
 msgid "deleted swift object: %(swift_object_name)s in container: %(container)s"
-msgstr ""
+msgstr "deleted swift object: %(swift_object_name)s in container: %(container)s"
 
 #: cinder/backup/drivers/swift.py:497
 #, python-format
 msgid "delete %s finished"
-msgstr ""
+msgstr "delete %s finished"
 
 #: cinder/backup/drivers/tsm.py:78
 #, python-format
@@ -2719,17 +2826,17 @@ msgstr ""
 #: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
-msgstr ""
+msgstr "Failed to create iscsi target for volume %(volume_id)s."
 
 #: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
-msgstr ""
+msgstr "Failed to remove iscsi target for volume %(volume_id)s."
 
 #: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
-msgstr ""
+msgstr "Failed to attach iSCSI target for volume %(volume_id)s."
 
 #: cinder/brick/exception.py:120
 #, python-format
@@ -2765,12 +2872,12 @@ msgstr ""
 
 #: cinder/brick/initiator/connector.py:609
 msgid "We are unable to locate any Fibre Channel devices"
-msgstr ""
+msgstr "We are unable to locate any Fibre Channel devices"
 
 #: cinder/brick/initiator/connector.py:619
 #, python-format
 msgid "Looking for Fibre Channel dev %(device)s"
-msgstr ""
+msgstr "Looking for Fibre Channel dev %(device)s"
 
 #: cinder/brick/initiator/connector.py:629
 msgid "Fibre Channel volume device not found."
@@ -2789,7 +2896,7 @@ msgstr ""
 #: cinder/brick/initiator/connector.py:658
 #, python-format
 msgid "Multipath device discovered %(device)s"
-msgstr ""
+msgstr "Multipath device discovered %(device)s"
 
 #: cinder/brick/initiator/connector.py:776
 #, python-format
@@ -2828,7 +2935,7 @@ msgstr ""
 
 #: cinder/brick/initiator/linuxfc.py:50 cinder/brick/initiator/linuxfc.py:56
 msgid "systool is not installed"
-msgstr ""
+msgstr "systool is not installed"
 
 #: cinder/brick/initiator/linuxscsi.py:99
 #: cinder/brick/initiator/linuxscsi.py:107
@@ -2861,7 +2968,7 @@ msgstr ""
 #: cinder/brick/iscsi/iscsi.py:172
 #, python-format
 msgid "Creating iscsi_target for: %s"
-msgstr ""
+msgstr "Creating iscsi_target for: %s"
 
 #: cinder/brick/iscsi/iscsi.py:179
 #, python-format
@@ -2870,10 +2977,10 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
+#, 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"
+msgstr ""
 
 #: cinder/brick/iscsi/iscsi.py:222
 #, python-format
@@ -2881,59 +2988,65 @@ msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 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:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
-msgstr ""
+msgstr "Removing iscsi_target for: %s"
 
 #: cinder/brick/iscsi/iscsi.py:256
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
+#, 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"
+msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
-msgid "valid iqn needed for show_target"
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
+msgid "valid iqn needed for show_target"
+msgstr "valid iqn needed for show_target"
+
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
-msgstr ""
+msgstr "Removing iscsi_target for volume: %s"
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
-msgstr ""
+msgstr "Creating iscsi_target for volume: %s"
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:552
+#, python-format
 msgid "Removing iscsi_target: %s"
-msgstr "Removing iscsi_target: %s"
+msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
-msgstr ""
+msgstr "Failed to add initiator iqn %s to target"
 
 #: cinder/brick/local_dev/lvm.py:75
 msgid "Error creating Volume Group"
@@ -2964,18 +3077,18 @@ msgid "StdErr  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:82
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to locate Volume Group %s"
-msgstr "Unable to locate Volume Group %s"
+msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:157
 msgid "Error querying thin pool about data_percent"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:370
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find VG: %s"
-msgstr "Unable to find VG: %s"
+msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:420
 msgid ""
@@ -3055,25 +3168,25 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
 #: cinder/common/sqlalchemyutils.py:66
 #: cinder/openstack/common/db/sqlalchemy/utils.py:72
 msgid "Id not in sort_keys; is sort_keys unique?"
-msgstr ""
+msgstr "Id not in sort_keys; is sort_keys unique?"
 
 #: cinder/common/sqlalchemyutils.py:114
 #: cinder/openstack/common/db/sqlalchemy/utils.py:120
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
-msgstr ""
+msgstr "Unknown sort direction, must be 'desc' or 'asc'"
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3085,52 +3198,51 @@ msgstr "Use of empty request context is deprecated"
 #: cinder/db/sqlalchemy/api.py:192
 #, python-format
 msgid "Unrecognized read_deleted value '%s'"
-msgstr ""
+msgstr "Unrecognised read_deleted value '%s'"
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
-#, fuzzy
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
-msgstr "Volume must be available"
+msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3139,19 +3251,19 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migration.py:37
 msgid "version should be an integer"
-msgstr ""
+msgstr "version should be an integer"
 
 #: cinder/db/sqlalchemy/migration.py:64
 msgid "Upgrade DB using Essex release first."
-msgstr ""
+msgstr "Upgrade DB using Essex release first."
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/001_cinder_init.py:240
 msgid "Exception while creating table."
-msgstr ""
+msgstr "Exception while creating table."
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/001_cinder_init.py:269
 msgid "Downgrade from initial Cinder install is unsupported."
-msgstr ""
+msgstr "Downgrade from initial Cinder install is unsupported."
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:49
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:74
@@ -3163,7 +3275,7 @@ msgstr ""
 #: cinder/db/sqlalchemy/migrate_repo/versions/020_add_volume_admin_metadata_table.py:46
 #, python-format
 msgid "Table |%s| not created!"
-msgstr ""
+msgstr "Table |%s| not created!"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:127
 msgid "Dropping foreign key reservations_ibfk_1 failed."
@@ -3171,31 +3283,31 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:133
 msgid "quota_classes table not dropped"
-msgstr ""
+msgstr "quota_classes table not dropped"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:140
 msgid "quota_usages table not dropped"
-msgstr ""
+msgstr "quota_usages table not dropped"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:147
 msgid "reservations table not dropped"
-msgstr ""
+msgstr "reservations table not dropped"
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
-msgstr ""
+msgstr "volume_glance_metadata table not dropped"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/008_add_backup.py:68
 msgid "backups table not dropped"
-msgstr ""
+msgstr "backups table not dropped"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/009_add_snapshot_metadata_table.py:58
 msgid "snapshot_metadata table not dropped"
-msgstr ""
+msgstr "snapshot_metadata table not dropped"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/010_add_transfers_table.py:61
 msgid "transfers table not dropped"
@@ -3288,12 +3400,12 @@ msgstr ""
 
 #: cinder/image/image_utils.py:94 cinder/image/image_utils.py:199
 msgid "'qemu-img info' parsing failed."
-msgstr ""
+msgstr "'qemu-img info' parsing failed."
 
 #: cinder/image/image_utils.py:101
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
-msgstr ""
+msgstr "fmt=%(fmt)s backed by: %(backing_file)s"
 
 #: cinder/image/image_utils.py:109 cinder/image/image_utils.py:192
 #, python-format
@@ -3323,7 +3435,7 @@ msgstr ""
 #: cinder/image/image_utils.py:206
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
-msgstr ""
+msgstr "fmt=%(fmt)s backed by:%(backing_file)s"
 
 #: cinder/image/image_utils.py:224
 #, python-format
@@ -3333,7 +3445,7 @@ msgstr ""
 #: cinder/image/image_utils.py:260
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
-msgstr ""
+msgstr "Converted to %(f1)s, but format is now %(f2)s"
 
 #: cinder/keymgr/conf_key_mgr.py:78
 msgid ""
@@ -3353,22 +3465,22 @@ msgstr ""
 #: cinder/openstack/common/eventlet_backdoor.py:140
 #, python-format
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
-msgstr ""
+msgstr "Eventlet backdoor listening on %(port)s for process %(pid)d"
 
 #: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
-msgstr ""
+msgstr "Original exception being dropped: %s"
 
 #: cinder/openstack/common/excutils.py:91
 #, python-format
 msgid "Unexpected exception occurred %d time(s)... retrying."
-msgstr ""
+msgstr "Unexpected exception occurred %d time(s)... retrying."
 
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
-msgstr ""
+msgstr "Reloading cached file %s"
 
 #: cinder/openstack/common/gettextutils.py:271
 msgid "Message objects do not support addition."
@@ -3387,96 +3499,96 @@ msgstr ""
 
 #: cinder/openstack/common/imageutils.py:104
 msgid "Snapshot list encountered but no header found!"
-msgstr ""
+msgstr "Snapshot list encountered but no header found!"
 
 #: cinder/openstack/common/lockutils.py:102
 #, python-format
 msgid "Could not release the acquired lock `%s`"
-msgstr ""
+msgstr "Could not release the acquired lock `%s`"
 
 #: cinder/openstack/common/lockutils.py:189
 #, python-format
 msgid "Got semaphore \"%(lock)s\" for method \"%(method)s\"..."
-msgstr ""
+msgstr "Got semaphore \"%(lock)s\" for method \"%(method)s\"..."
 
 #: cinder/openstack/common/lockutils.py:200
 #, python-format
 msgid "Attempting to grab file lock \"%(lock)s\" for method \"%(method)s\"..."
-msgstr ""
+msgstr "Attempting to grab file lock \"%(lock)s\" for method \"%(method)s\"..."
 
 #: cinder/openstack/common/lockutils.py:227
 #, python-format
 msgid "Got file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
-msgstr ""
+msgstr "Got file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 
 #: cinder/openstack/common/lockutils.py:235
 #, python-format
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
-msgstr ""
+msgstr "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
-msgstr ""
+msgstr "Deprecated: %s"
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
-msgstr ""
+msgstr "Error loading logging config %(log_config)s: %(err_msg)s"
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
-msgstr ""
+msgstr "syslog facility must be one of: %s"
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
-msgstr ""
+msgstr "Fatal call to deprecated config: %(msg)s"
 
 #: cinder/openstack/common/loopingcall.py:82
 #, python-format
 msgid "task run outlasted interval by %s sec"
-msgstr ""
+msgstr "task run outlasted interval by %s sec"
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
-msgstr ""
+msgstr "in fixed duration looping call"
 
 #: cinder/openstack/common/loopingcall.py:129
 #, python-format
 msgid "Dynamic looping call sleeping for %.02f seconds"
-msgstr ""
+msgstr "Dynamic looping call sleeping for %.02f seconds"
 
 #: cinder/openstack/common/loopingcall.py:136
 msgid "in dynamic looping call"
-msgstr ""
+msgstr "in dynamic looping call"
 
 #: cinder/openstack/common/periodic_task.py:43
 #, python-format
 msgid "Unexpected argument for periodic task creation: %(arg)s."
-msgstr ""
+msgstr "Unexpected argument for periodic task creation: %(arg)s."
 
 #: cinder/openstack/common/periodic_task.py:134
 #, python-format
 msgid "Skipping periodic task %(task)s because its interval is negative"
-msgstr ""
+msgstr "Skipping periodic task %(task)s because its interval is negative"
 
 #: cinder/openstack/common/periodic_task.py:139
 #, python-format
 msgid "Skipping periodic task %(task)s because it is disabled"
-msgstr ""
+msgstr "Skipping periodic task %(task)s because it is disabled"
 
 #: cinder/openstack/common/periodic_task.py:177
 #, python-format
 msgid "Running periodic task %(full_task_name)s"
-msgstr ""
+msgstr "Running periodic task %(full_task_name)s"
 
 #: cinder/openstack/common/periodic_task.py:186
 #, python-format
 msgid "Error during %(full_task_name)s: %(e)s"
-msgstr ""
+msgstr "Error during %(full_task_name)s: %(e)s"
 
 #: cinder/openstack/common/policy.py:149
 #, python-format
@@ -3484,26 +3596,28 @@ msgid ""
 "Inheritance-based rules are deprecated; use the default brain instead of "
 "%s."
 msgstr ""
+"Inheritance-based rules are deprecated; use the default brain instead of "
+"%s."
 
 #: cinder/openstack/common/policy.py:163
 #, python-format
 msgid "Failed to understand rule %(match)r"
-msgstr ""
+msgstr "Failed to understand rule %(match)r"
 
 #: cinder/openstack/common/policy.py:173
 #, python-format
 msgid "Inheritance-based rules are deprecated; update _check_%s"
-msgstr ""
+msgstr "Inheritance-based rules are deprecated; update _check_%s"
 
 #: cinder/openstack/common/policy.py:180
 #, python-format
 msgid "No handler for matches of kind %s"
-msgstr ""
+msgstr "No handler for matches of kind %s"
 
 #: cinder/openstack/common/processutils.py:127
 #, python-format
 msgid "Got unknown keyword args to utils.execute: %r"
-msgstr ""
+msgstr "Got unknown keyword args to utils.execute: %r"
 
 #: cinder/openstack/common/processutils.py:142
 #, python-format
@@ -3520,7 +3634,7 @@ msgstr "Result was %s"
 #: cinder/openstack/common/processutils.py:179
 #, python-format
 msgid "%r failed. Retrying."
-msgstr ""
+msgstr "%r failed. Retrying."
 
 #: cinder/openstack/common/processutils.py:218
 #, python-format
@@ -3529,11 +3643,11 @@ msgstr "Running cmd (SSH): %s"
 
 #: cinder/openstack/common/processutils.py:220
 msgid "Environment not supported over SSH"
-msgstr ""
+msgstr "Environment not supported over SSH"
 
 #: cinder/openstack/common/processutils.py:224
 msgid "process_input not supported over SSH"
-msgstr ""
+msgstr "process_input not supported over SSH"
 
 #: cinder/openstack/common/request_utils.py:66
 #, python-format
@@ -3556,69 +3670,68 @@ msgstr ""
 #: cinder/openstack/common/service.py:269
 #, python-format
 msgid "Caught %s, exiting"
-msgstr ""
+msgstr "Caught %s, exiting"
 
 #: cinder/openstack/common/service.py:187
 msgid "Exception during rpc cleanup."
-msgstr ""
+msgstr "Exception during rpc cleanup."
 
 #: cinder/openstack/common/service.py:238
 msgid "Parent process has died unexpectedly, exiting"
-msgstr ""
+msgstr "Parent process has died unexpectedly, exiting"
 
 #: cinder/openstack/common/service.py:275
-#, fuzzy
 msgid "Unhandled exception"
 msgstr "Unhandled exception"
 
 #: cinder/openstack/common/service.py:308
 msgid "Forking too fast, sleeping"
-msgstr ""
+msgstr "Forking too fast, sleeping"
 
 #: cinder/openstack/common/service.py:327
 #, python-format
 msgid "Started child %d"
-msgstr ""
+msgstr "Started child %d"
 
 #: cinder/openstack/common/service.py:337
 #, python-format
 msgid "Starting %d workers"
-msgstr ""
+msgstr "Starting %d workers"
 
 #: cinder/openstack/common/service.py:354
 #, python-format
 msgid "Child %(pid)d killed by signal %(sig)d"
-msgstr ""
+msgstr "Child %(pid)d killed by signal %(sig)d"
 
 #: cinder/openstack/common/service.py:358
 #, python-format
 msgid "Child %(pid)s exited with status %(code)d"
-msgstr ""
+msgstr "Child %(pid)s exited with status %(code)d"
 
 #: cinder/openstack/common/service.py:362
 #, python-format
 msgid "pid %d not in child list"
-msgstr ""
+msgstr "pid %d not in child list"
 
 #: cinder/openstack/common/service.py:392
 #, python-format
 msgid "Caught %s, stopping children"
-msgstr ""
+msgstr "Caught %s, stopping children"
 
 #: cinder/openstack/common/service.py:410
 #, python-format
 msgid "Waiting on %d children to exit"
-msgstr ""
+msgstr "Waiting on %d children to exit"
 
 #: cinder/openstack/common/sslutils.py:98
 #, python-format
 msgid "Invalid SSL version : %s"
-msgstr ""
+msgstr "Invalid SSL version : %s"
 
 #: cinder/openstack/common/strutils.py:92
 #, python-format
 msgid "Unrecognized value '%(val)s', acceptable values are: %(acceptable)s"
-msgstr ""
+msgstr "Unrecognised value '%(val)s', acceptable values are: %(acceptable)s"
 
 #: cinder/openstack/common/strutils.py:202
 #, python-format
@@ -3628,7 +3741,7 @@ msgstr ""
 #: cinder/openstack/common/strutils.py:211
 #, python-format
 msgid "Invalid string format: %s"
-msgstr ""
+msgstr "Invalid string format: %s"
 
 #: cinder/openstack/common/versionutils.py:69
 #, python-format
@@ -3646,21 +3759,21 @@ msgstr ""
 
 #: cinder/openstack/common/crypto/utils.py:29
 msgid "An unknown error occurred in crypto utils."
-msgstr ""
+msgstr "An unknown error occurred in crypto utils."
 
 #: cinder/openstack/common/crypto/utils.py:36
 #, python-format
 msgid "Block size of %(given)d is too big, max = %(maximum)d"
-msgstr ""
+msgstr "Block size of %(given)d is too big, max = %(maximum)d"
 
 #: cinder/openstack/common/crypto/utils.py:45
 #, python-format
 msgid "Length of %(given)d is too long, max = %(maximum)d"
-msgstr ""
+msgstr "Length of %(given)d is too long, max = %(maximum)d"
 
 #: cinder/openstack/common/db/exception.py:44
 msgid "Invalid Parameter: Unicode is not supported by the current database."
-msgstr ""
+msgstr "Invalid Parameter: Unicode is not supported by the current database."
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:487
 msgid "DB exception wrapped."
@@ -3669,16 +3782,16 @@ msgstr "DB exception wrapped."
 #: cinder/openstack/common/db/sqlalchemy/session.py:538
 #, python-format
 msgid "Got mysql server has gone away: %s"
-msgstr ""
+msgstr "Got mysql server has gone away: %s"
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:610
 #, python-format
 msgid "SQL connection failed. %s attempts left."
-msgstr ""
+msgstr "SQL connection failed. %s attempts left."
 
 #: cinder/openstack/common/db/sqlalchemy/utils.py:33
 msgid "Sort key supplied was not valid."
-msgstr ""
+msgstr "Sort key supplied was not valid."
 
 #: cinder/openstack/common/scheduler/filters/capabilities_filter.py:54
 #, python-format
@@ -3697,7 +3810,7 @@ msgstr ""
 #: cinder/openstack/common/scheduler/filters/ignore_attempted_hosts_filter.py:52
 #, python-format
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
-msgstr ""
+msgstr "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
 
 #: cinder/scheduler/driver.py:69
 msgid "Must implement host_passes_filters"
@@ -3709,11 +3822,11 @@ msgstr ""
 
 #: cinder/scheduler/driver.py:78
 msgid "Must implement a fallback schedule"
-msgstr ""
+msgstr "Must implement a fallback schedule"
 
 #: cinder/scheduler/driver.py:82
 msgid "Must implement schedule_create_volume"
-msgstr ""
+msgstr "Must implement schedule_create_volume"
 
 #: cinder/scheduler/filter_scheduler.py:98
 #, python-format
@@ -3734,7 +3847,7 @@ msgstr ""
 
 #: cinder/scheduler/filter_scheduler.py:156
 msgid "Invalid value for 'scheduler_max_attempts', must be >=1"
-msgstr ""
+msgstr "Invalid value for 'scheduler_max_attempts', must be >=1"
 
 #: cinder/scheduler/filter_scheduler.py:174
 #, python-format
@@ -3742,11 +3855,13 @@ msgid ""
 "Error scheduling %(volume_id)s from last vol-service: %(last_host)s : "
 "%(exc)s"
 msgstr ""
+"Error scheduling %(volume_id)s from last vol-service: %(last_host)s : "
+"%(exc)s"
 
 #: cinder/scheduler/filter_scheduler.py:207
 #, python-format
 msgid "Exceeded max scheduling attempts %(max_attempts)d for volume %(volume_id)s"
-msgstr ""
+msgstr "Exceeded max scheduling attempts %(max_attempts)d for volume %(volume_id)s"
 
 #: cinder/scheduler/filter_scheduler.py:259
 #, python-format
@@ -3761,19 +3876,19 @@ msgstr ""
 #: cinder/scheduler/host_manager.py:266
 #, python-format
 msgid "Ignoring %(service_name)s service update from %(host)s"
-msgstr ""
+msgstr "Ignoring %(service_name)s service update from %(host)s"
 
 #: cinder/scheduler/host_manager.py:271
 #, python-format
 msgid "Received %(service_name)s service update from %(host)s."
-msgstr ""
+msgstr "Received %(service_name)s service update from %(host)s."
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3802,12 +3917,12 @@ msgstr ""
 #: cinder/scheduler/manager.py:219
 #, python-format
 msgid "Failed to schedule_%(method)s: %(ex)s"
-msgstr ""
+msgstr "Failed to schedule_%(method)s: %(ex)s"
 
 #: cinder/scheduler/scheduler_options.py:68
 #, python-format
 msgid "Could not stat scheduler options file %(filename)s: '%(e)s'"
-msgstr ""
+msgstr "Could not stat scheduler options file %(filename)s: '%(e)s'"
 
 #: cinder/scheduler/scheduler_options.py:78
 #, python-format
@@ -3816,7 +3931,7 @@ msgstr ""
 
 #: cinder/scheduler/filters/capacity_filter.py:43
 msgid "Free capacity not set: volume node info collection broken."
-msgstr ""
+msgstr "Free capacity not set: volume node info collection broken."
 
 #: cinder/scheduler/filters/capacity_filter.py:57
 #, python-format
@@ -3824,6 +3939,8 @@ msgid ""
 "Insufficient free space for volume creation (requested / avail): "
 "%(requested)s/%(available)s"
 msgstr ""
+"Insufficient free space for volume creation (requested / avail): "
+"%(requested)s/%(available)s"
 
 #: cinder/scheduler/flows/create_volume.py:53
 msgid "No volume_id provided to populate a request_spec from"
@@ -3842,9 +3959,9 @@ msgstr ""
 #: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:883
 #, python-format
 msgid "FAKE ISCSI: %s"
-msgstr ""
+msgstr "FAKE ISCSI: %s"
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3856,29 +3973,29 @@ msgstr ""
 #: cinder/tests/fake_driver.py:124 cinder/tests/fake_driver.py:129
 #, python-format
 msgid "LoggingVolumeDriver: %s"
-msgstr ""
+msgstr "LoggingVolumeDriver: %s"
 
 #: cinder/tests/fake_utils.py:70
 #, python-format
 msgid "Faking execution of cmd (subprocess): %s"
-msgstr ""
+msgstr "Faking execution of cmd (subprocess): %s"
 
 #: cinder/tests/fake_utils.py:78
 #, python-format
 msgid "Faked command matched %s"
-msgstr ""
+msgstr "Faked command matched %s"
 
 #: cinder/tests/fake_utils.py:94
 #, python-format
 msgid "Faked command raised an exception %s"
-msgstr ""
+msgstr "Faked command raised an exception %s"
 
 #: cinder/tests/fake_utils.py:97
 #, python-format
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
-msgstr ""
+msgstr "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3888,7 +4005,7 @@ msgstr ""
 #: cinder/tests/test_ibm_xiv_ds8k.py:102
 #, python-format
 msgid "Volume not found for instance %(instance_id)s."
-msgstr ""
+msgstr "Volume not found for instance %(instance_id)s."
 
 #: cinder/tests/test_misc.py:58
 #, python-format
@@ -3896,6 +4013,8 @@ msgid ""
 "The following migrations are missing a downgrade:\n"
 "\t%s"
 msgstr ""
+"The following migrations are missing a downgrade:\n"
+"\t%s"
 
 #: cinder/tests/test_netapp.py:1327
 msgid "Error not a TypeError."
@@ -3910,50 +4029,55 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
 #: cinder/tests/test_storwize_svc.py:252
 #, python-format
 msgid "unrecognized argument %s"
-msgstr ""
+msgstr "unrecognised argument %s"
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
-msgstr ""
+msgstr "Run CLI command: %s"
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
 " stdout: %(stdout)s\n"
 " stderr: %(stderr)s"
 msgstr ""
+"CLI output:\n"
+" stdout: %(stdout)s\n"
+" stderr: %(stderr)s"
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
 " stdout: %(out)s\n"
 " stderr: %(err)s"
 msgstr ""
+"CLI Exception output:\n"
+" stdout: %(out)s\n"
+" stderr: %(err)s"
 
 #: cinder/tests/test_volume_types.py:60
 #, python-format
 msgid "Given data: %s"
-msgstr ""
+msgstr "Given data: %s"
 
 #: cinder/tests/test_volume_types.py:61
 #, python-format
 msgid "Result data: %s"
-msgstr ""
+msgstr "Result data: %s"
 
-#: cinder/tests/api/contrib/test_backups.py:737
-#, fuzzy
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
-msgstr "Invalid input"
+msgstr ""
 
 #: cinder/tests/brick/test_brick_remotefs.py:99
 msgid "Unexpected call to _execute."
@@ -3964,9 +4088,9 @@ msgid "mount failed."
 msgstr ""
 
 #: cinder/tests/integrated/test_login.py:29
-#, fuzzy, python-format
+#, python-format
 msgid "volume: %s"
-msgstr "volume: %s"
+msgstr ""
 
 #: cinder/tests/integrated/api/client.py:34
 #, python-format
@@ -3975,47 +4099,50 @@ msgid ""
 "Status Code: %(_status)s\n"
 "Body: %(_body)s"
 msgstr ""
+"%(message)s\n"
+"Status Code: %(_status)s\n"
+"Body: %(_body)s"
 
 #: cinder/tests/integrated/api/client.py:44
 msgid "Authentication error"
-msgstr ""
+msgstr "Authentication error"
 
 #: cinder/tests/integrated/api/client.py:52
 msgid "Authorization error"
-msgstr ""
+msgstr "Authorisation error"
 
 #: cinder/tests/integrated/api/client.py:60
 msgid "Item not found"
-msgstr ""
+msgstr "Item not found"
 
 #: cinder/tests/integrated/api/client.py:97
 #, python-format
 msgid "Doing %(method)s on %(relative_url)s"
-msgstr ""
+msgstr "Doing %(method)s on %(relative_url)s"
 
 #: cinder/tests/integrated/api/client.py:100
 #, python-format
 msgid "Body: %s"
-msgstr ""
+msgstr "Body: %s"
 
 #: cinder/tests/integrated/api/client.py:124
 #, python-format
 msgid "%(auth_uri)s => code %(http_status)s"
-msgstr ""
+msgstr "%(auth_uri)s => code %(http_status)s"
 
 #: cinder/tests/integrated/api/client.py:147
 #, python-format
 msgid "%(relative_uri)s => code %(http_status)s"
-msgstr ""
+msgstr "%(relative_uri)s => code %(http_status)s"
 
 #: cinder/tests/integrated/api/client.py:158
 msgid "Unexpected status code"
-msgstr ""
+msgstr "Unexpected status code"
 
 #: cinder/tests/integrated/api/client.py:165
 #, python-format
 msgid "Decoding JSON: %s"
-msgstr ""
+msgstr "Decoding JSON: %s"
 
 #: cinder/tests/zonemanager/test_brcd_fc_zone_driver.py:124
 #, python-format
@@ -4053,12 +4180,12 @@ msgstr ""
 
 #: cinder/transfer/api.py:102 cinder/volume/api.py:350
 msgid "status must be available"
-msgstr ""
+msgstr "status must be available"
 
 #: cinder/transfer/api.py:119
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to create transfer record for %s"
-msgstr "Failed to create transfer record for %s"
+msgstr ""
 
 #: cinder/transfer/api.py:136
 #, python-format
@@ -4071,6 +4198,8 @@ msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG volume "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
+"Quota exceeded for %(s_pid)s, tried to create %(s_size)sG volume "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)"
 
 #: cinder/transfer/api.py:182
 #, python-format
@@ -4105,7 +4234,7 @@ msgstr ""
 
 #: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
-msgstr ""
+msgstr "Failed to update quota for deleting volume"
 
 #: cinder/volume/api.py:228
 #, python-format
@@ -4119,26 +4248,25 @@ msgstr ""
 #: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
-msgstr ""
+msgstr "Volume still has %d dependent snapshots"
 
 #: cinder/volume/api.py:293 cinder/volume/api.py:333
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
-msgstr ""
+msgstr "Searching by: %s"
 
 #: cinder/volume/api.py:353
 msgid "already attached"
-msgstr ""
+msgstr "already attached"
 
 #: cinder/volume/api.py:360
 msgid "status must be in-use to detach"
 msgstr ""
 
 #: cinder/volume/api.py:371
-#, fuzzy
 msgid "Volume status must be available to reserve"
-msgstr "Volume status must be available to reserve"
+msgstr ""
 
 #: cinder/volume/api.py:447
 msgid "Snapshot cannot be created while volume is migrating"
@@ -4146,7 +4274,7 @@ msgstr ""
 
 #: cinder/volume/api.py:451
 msgid "must be available"
-msgstr ""
+msgstr "must be available"
 
 #: cinder/volume/api.py:473
 #, python-format
@@ -4154,6 +4282,8 @@ msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 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:485
 #, python-format
@@ -4161,32 +4291,32 @@ msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
+"Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
+"snapshots already consumed)"
 
 #: cinder/volume/api.py:536
-#, fuzzy
 msgid "Volume Snapshot status must be available or error"
-msgstr "Volume Snapshot status must be available or error"
+msgstr ""
 
 #: cinder/volume/api.py:564 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
-msgstr ""
+msgstr "Metadata property key blank"
 
 #: cinder/volume/api.py:568
 msgid "Metadata property key greater than 255 characters"
-msgstr ""
+msgstr "Metadata property key greater than 255 characters"
 
 #: cinder/volume/api.py:572
 msgid "Metadata property value greater than 255 characters"
-msgstr ""
+msgstr "Metadata property value greater than 255 characters"
 
 #: cinder/volume/api.py:703 cinder/volume/api.py:777
-#, fuzzy
 msgid "Volume status must be available/in-use."
-msgstr "Volume status must be available/in-use."
+msgstr ""
 
 #: cinder/volume/api.py:706
 msgid "Volume status is in-use."
-msgstr ""
+msgstr "Volume status is in-use."
 
 #: cinder/volume/api.py:735
 msgid "Volume status must be available to extend."
@@ -4214,73 +4344,73 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
 #: cinder/volume/driver.py:195 cinder/volume/drivers/netapp/nfs.py:176
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
-msgstr ""
+msgstr "Recovering from a failed execute.  Try number %s"
 
 #: cinder/volume/driver.py:278
 #, python-format
@@ -4300,27 +4430,27 @@ msgstr ""
 #: cinder/volume/driver.py:335
 #, python-format
 msgid "copy_image_to_volume %s."
-msgstr ""
+msgstr "copy_image_to_volume %s."
 
 #: cinder/volume/driver.py:352
 #, python-format
 msgid "copy_volume_to_image %s."
-msgstr ""
+msgstr "copy_volume_to_image %s."
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4335,18 +4465,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr "volume %s: removing export"
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4369,9 +4499,9 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
-msgstr ""
+msgstr "ISCSI provider_location not stored, using discovery"
 
 #: cinder/volume/driver.py:652
 #, python-format
@@ -4384,27 +4514,27 @@ msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
 #: cinder/volume/driver.py:701
-#, fuzzy, python-format
+#, python-format
 msgid "Could not find iSCSI export for volume %s"
-msgstr "Could not find iSCSI export for volume %s"
+msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
-msgstr ""
+msgstr "ISCSI Discovery: Found %s"
 
 #: cinder/volume/driver.py:802
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4412,15 +4542,22 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
+msgstr "Driver must implement initialise_connection"
+
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
 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 ""
+msgstr "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 
 #: cinder/volume/iscsi.py:80
 #, python-format
@@ -4428,10 +4565,12 @@ 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 ""
+msgstr "Detected inconsistency in provider_location id"
 
 #: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:572
 #: cinder/volume/drivers/huawei/rest_common.py:1225
@@ -4442,7 +4581,7 @@ msgstr ""
 #: cinder/volume/iscsi.py:184
 #, python-format
 msgid "Symbolic link %s not found"
-msgstr ""
+msgstr "Symbolic link %s not found"
 
 #: cinder/volume/iscsi.py:251
 #, python-format
@@ -4452,288 +4591,281 @@ msgstr ""
 #: cinder/volume/iscsi.py:252
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
+msgstr "Skipping ensure_export. No iscsi_target provision for volume: %s"
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
-msgstr ""
+msgstr "Driver path %s is deprecated, update your configuration to the new path."
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr "Re-exporting %s volumes"
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
-msgstr ""
+msgstr "volume %s stuck in a downloading state"
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr "volume %s: skipping export"
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
-msgstr ""
+msgstr "Resuming any in progress delete operations"
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
-msgstr ""
+msgstr "Resuming delete on volume: %s"
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr "volume %s: deleting"
 
-#: cinder/volume/manager.py:390
-#, fuzzy
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
-msgstr "Volume is not local to this node"
+msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
-msgstr ""
+msgstr "Failed to update usages deleting volume"
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr "volume %s: deleted successfully"
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
-msgstr ""
+msgstr "snapshot %s: creating"
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
-msgstr ""
+msgstr "snapshot %s: created successfully"
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
-msgstr ""
+msgstr "snapshot %s: deleting"
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
-msgstr ""
+msgstr "Failed to update usages deleting snapshot"
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
-msgstr ""
+msgstr "snapshot %s: deleted successfully"
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
-msgstr ""
+msgstr "being attached by another instance"
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
-msgstr ""
+msgstr "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
-msgstr ""
+msgstr "Updating volume status"
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
-msgstr ""
+msgstr "Notification {%s} received"
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4749,13 +4881,13 @@ msgstr ""
 #: cinder/volume/volume_types.py:43
 #, python-format
 msgid "DB error: %s"
-msgstr ""
+msgstr "DB error: %s"
 
 #: cinder/volume/qos_specs.py:123 cinder/volume/qos_specs.py:140
 #: cinder/volume/qos_specs.py:272 cinder/volume/volume_types.py:52
 #: cinder/volume/volume_types.py:99
 msgid "id cannot be None"
-msgstr ""
+msgstr "id cannot be None"
 
 #: cinder/volume/qos_specs.py:156
 #, python-format
@@ -4786,19 +4918,19 @@ msgstr ""
 
 #: cinder/volume/qos_specs.py:284 cinder/volume/volume_types.py:111
 msgid "name cannot be None"
-msgstr ""
+msgstr "name cannot be None"
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
-msgstr ""
+msgstr "Performing secure delete on volume: %s"
 
 #: cinder/volume/volume_types.py:130
 #, python-format
@@ -4806,12 +4938,14 @@ msgid ""
 "Default volume type is not found, please check default_volume_type "
 "config: %s"
 msgstr ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 
 #: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:284
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
-msgstr ""
+msgstr "Creating clone of volume: %s"
 
 #: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
@@ -4921,11 +5055,11 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
-#, fuzzy, python-format
+#, python-format
 msgid "Error running SSH command: %s"
-msgstr "Error running SSH command: %s"
+msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:282
 #, python-format
@@ -5001,219 +5135,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
-msgstr ""
+msgstr "There's no Gluster config file configured (%s)"
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
-msgstr ""
+msgstr "Gluster config file at %(config)s doesn't exist"
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
-msgstr ""
+msgstr "mount.glusterfs is not installed"
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
-#, fuzzy, python-format
+#, python-format
 msgid "casted to %s"
-msgstr "casted to %s"
+msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
-msgstr ""
+msgstr "Volume %s does not have provider_location specified, skipping"
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
-msgstr ""
+msgstr "Exception during mounting %s"
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5235,7 +5369,7 @@ msgstr ""
 #: cinder/volume/drivers/lvm.py:246
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
-msgstr ""
+msgstr "snapshot: %s not found, skipping delete operations"
 
 #: cinder/volume/drivers/lvm.py:347
 #, python-format
@@ -5280,17 +5414,17 @@ msgstr ""
 #: cinder/volume/drivers/nfs.py:380
 #, python-format
 msgid "%s is already mounted"
-msgstr ""
+msgstr "%s is already mounted"
 
 #: cinder/volume/drivers/nfs.py:432
 #, python-format
 msgid "There's no NFS config file configured (%s)"
-msgstr ""
+msgstr "There's no NFS config file configured (%s)"
 
 #: cinder/volume/drivers/nfs.py:437
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
-msgstr ""
+msgstr "NFS config file at %(config)s doesn't exist"
 
 #: cinder/volume/drivers/nfs.py:442
 #, python-format
@@ -5322,175 +5456,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
-msgstr ""
+msgstr "error refreshing volume stats"
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
-msgstr ""
+msgstr "Not stored in rbd"
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
-msgstr ""
+msgstr "Blank components"
 
-#: cinder/volume/drivers/rbd.py:718
-#, fuzzy
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
-msgstr "Not an rbd snapshot"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
-msgstr ""
+msgstr "%s is in a different ceph cluster"
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:754
+#, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
-msgstr "Unable to open image %(loc)s: %(err)s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5498,39 +5631,39 @@ msgstr ""
 
 #: cinder/volume/drivers/scality.py:67
 msgid "Value required for 'scality_sofs_config'"
-msgstr ""
+msgstr "Value required for 'scality_sofs_config'"
 
 #: cinder/volume/drivers/scality.py:78
 #, python-format
 msgid "Cannot access 'scality_sofs_config': %s"
-msgstr ""
+msgstr "Cannot access 'scality_sofs_config': %s"
 
 #: cinder/volume/drivers/scality.py:84
 msgid "Cannot execute /sbin/mount.sofs"
-msgstr ""
+msgstr "Cannot execute /sbin/mount.sofs"
 
 #: cinder/volume/drivers/scality.py:105
 msgid "Cannot mount Scality SOFS, check syslog for errors"
-msgstr ""
+msgstr "Cannot mount Scality SOFS, check syslog for errors"
 
 #: cinder/volume/drivers/scality.py:139
 #, python-format
 msgid "Cannot find volume dir for Scality SOFS at '%s'"
-msgstr ""
+msgstr "Cannot find volume dir for Scality SOFS at '%s'"
 
 #: cinder/volume/drivers/sheepdog.py:59
 #, python-format
 msgid "Sheepdog is not working: %s"
-msgstr ""
+msgstr "Sheepdog is not working: %s"
 
 #: cinder/volume/drivers/sheepdog.py:64
 msgid "Sheepdog is not working"
-msgstr ""
+msgstr "Sheepdog is not working"
 
 #: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
-msgstr ""
+msgstr "Payload for SolidFire API call: %s"
 
 #: cinder/volume/drivers/solidfire.py:149
 #, python-format
@@ -5559,53 +5692,53 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
-msgstr ""
+msgstr "Call to json.loads() raised an exception: %s"
 
 #: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
-msgstr ""
+msgstr "Results of SolidFire API call: %s"
 
 #: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
-msgstr ""
+msgstr "Clone operation encountered: %s"
 
 #: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
-msgstr ""
+msgstr "Waiting for outstanding operation before retrying snapshot: %s"
 
 #: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
-msgstr ""
+msgstr "Detected xDBVersionMismatch, retry %s of 5"
 
 #: 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 ""
+msgstr "API response: %s"
 
 #: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
-msgstr ""
+msgstr "Found solidfire account: %s"
 
 #: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
-msgstr ""
+msgstr "solidfire account: %s does not exist, create it..."
 
 #: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
-msgstr ""
+msgstr "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 
 #: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
-msgstr ""
+msgstr "Failed to get model update from clone"
 
 #: cinder/volume/drivers/solidfire.py:408
 #, python-format
@@ -5615,7 +5748,7 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
-msgstr ""
+msgstr "More than one valid preset was detected, using %s"
 
 #: cinder/volume/drivers/solidfire.py:458
 #, python-format
@@ -5625,26 +5758,26 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
-msgstr ""
+msgstr "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 
 #: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
-msgstr ""
+msgstr "Volume %s, not found on SF Cluster."
 
 #: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
-msgstr ""
+msgstr "Found %(count)s volumes mapped to id: %(uuid)s."
 
 #: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
-msgstr ""
+msgstr "Enter SolidFire delete_volume..."
 
 #: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
-msgstr ""
+msgstr "Account for Volume ID %s was not found on the SolidFire Cluster!"
 
 #: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
@@ -5657,23 +5790,23 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
-msgstr ""
+msgstr "Volume ID %s was not found on the SolidFire Cluster!"
 
 #: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
-msgstr ""
+msgstr "Leaving SolidFire delete_volume"
 
 #: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
-msgstr ""
+msgstr "Executing SolidFire ensure_export..."
 
 #: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
-msgstr ""
+msgstr "Executing SolidFire create_export..."
 
 #: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
@@ -5685,31 +5818,30 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
-msgstr ""
+msgstr "Updating cluster status info"
 
 #: cinder/volume/drivers/solidfire.py:671
-#, fuzzy
 msgid "Failed to get updated stats"
-msgstr "Failed to get updated stats"
+msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
 #: cinder/volume/drivers/zadara.py:236
 #, python-format
 msgid "Sending %(method)s to %(url)s. Body \"%(body)s\""
-msgstr ""
+msgstr "Sending %(method)s to %(url)s. Body \"%(body)s\""
 
 #: cinder/volume/drivers/zadara.py:260
 #, python-format
 msgid "Operation completed. %(data)s"
-msgstr ""
+msgstr "Operation completed. %(data)s"
 
 #: cinder/volume/drivers/zadara.py:357
 #, python-format
@@ -5719,7 +5851,7 @@ msgstr ""
 #: cinder/volume/drivers/zadara.py:408 cinder/volume/drivers/zadara.py:531
 #, python-format
 msgid "Volume %(name)s could not be found. It might be already deleted"
-msgstr ""
+msgstr "Volume %(name)s could not be found. It might be already deleted"
 
 #: cinder/volume/drivers/zadara.py:438
 #, python-format
@@ -5760,7 +5892,7 @@ msgstr ""
 #: cinder/volume/drivers/zadara.py:614
 #, python-format
 msgid "Attach properties: %(properties)s"
-msgstr ""
+msgstr "Attach properties: %(properties)s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:125
 #, python-format
@@ -5768,22 +5900,22 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
-msgstr ""
+msgstr "Could not find iSCSI export  for volume %s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
-#, fuzzy, python-format
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
+#, python-format
 msgid "Cannot find device number for volume %s"
-msgstr "Cannot find device number for volume %s"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
-msgstr ""
+msgstr "Found iSCSI endpoint: %s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:209
 #, python-format
@@ -5800,21 +5932,23 @@ msgid ""
 "Module PyWBEM not installed.  Install PyWBEM using the python-pywbem "
 "package."
 msgstr ""
+"Module PyWBEM not installed.  Install PyWBEM using the python-pywbem "
+"package."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:82
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:125
 msgid "Entering create_volume."
-msgstr ""
+msgstr "Entering create_volume."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:86
-#, fuzzy, python-format
+#, python-format
 msgid "Create Volume: %(volume)s  Size: %(size)lu"
-msgstr "Create Volume: %(volume)s  Size: %(size)lu"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:94
 #, python-format
 msgid "Create Volume: %(volume)s  Storage type: %(storage_type)s"
-msgstr ""
+msgstr "Create Volume: %(volume)s  Storage type: %(storage_type)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:101
 #, python-format
@@ -5822,6 +5956,8 @@ msgid ""
 "Create Volume: %(volume)s  Pool: %(pool)s  Storage System: "
 "%(storage_system)s"
 msgstr ""
+"Create Volume: %(volume)s  Pool: %(pool)s  Storage System: "
+"%(storage_system)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:110
 #, python-format
@@ -5829,6 +5965,8 @@ msgid ""
 "Error Create Volume: %(volumename)s. Storage Configuration Service not "
 "found for pool %(storage_type)s."
 msgstr ""
+"Error Create Volume: %(volumename)s. Storage Configuration Service not "
+"found for pool %(storage_type)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:120
 #, python-format
@@ -5841,7 +5979,7 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_smis_common.py:136
 #, python-format
 msgid "Create Volume: %(volumename)s  Return code: %(rc)lu"
-msgstr ""
+msgstr "Create Volume: %(volumename)s  Return code: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:143
 #, python-format
@@ -5849,6 +5987,8 @@ msgid ""
 "Error Create Volume: %(volumename)s.  Return code: %(rc)lu.  Error: "
 "%(error)s"
 msgstr ""
+"Error Create Volume: %(volumename)s.  Return code: %(rc)lu.  Error: "
+"%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:164
 #, python-format
@@ -5860,7 +6000,7 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_smis_common.py:176
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:348
 msgid "Entering create_volume_from_snapshot."
-msgstr ""
+msgstr "Entering create_volume_from_snapshot."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:181
 #, python-format
@@ -5868,6 +6008,8 @@ msgid ""
 "Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s"
 msgstr ""
+"Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
+"%(snapshotname)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:191
 #, python-format
@@ -5876,6 +6018,9 @@ msgid ""
 "%(snapshotname)s  Snapshot Instance: %(snapshotinstance)s  Storage "
 "System: %(storage_system)s."
 msgstr ""
+"Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
+"%(snapshotname)s  Snapshot Instance: %(snapshotinstance)s  Storage "
+"System: %(storage_system)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:201
 #, python-format
@@ -5883,6 +6028,8 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s. Create Volume from Snapshot is NOT supported on VMAX."
 msgstr ""
+"Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
+"%(snapshotname)s. Create Volume from Snapshot is NOT supported on VMAX."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:212
 #, python-format
@@ -5891,6 +6038,9 @@ msgid ""
 "%(snapshotname)s. Cannot find Replication Service to create volume from "
 "snapshot."
 msgstr ""
+"Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
+"%(snapshotname)s. Cannot find Replication Service to create volume from "
+"snapshot."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:221
 #, python-format
@@ -5900,6 +6050,10 @@ msgid ""
 "%(service)s  ElementName: %(elementname)s  SyncType: 8  SourceElement: "
 "%(sourceelement)s"
 msgstr ""
+"Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
+"%(snapshotname)s  Method: CreateElementReplica  ReplicationService: "
+"%(service)s  ElementName: %(elementname)s  SyncType: 8  SourceElement: "
+"%(sourceelement)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:242
 #, python-format
@@ -5907,6 +6061,8 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  "
 "Snapshot:%(snapshotname)s.  Return code: %(rc)lu.Error: %(error)s"
 msgstr ""
+"Error Create Volume from Snapshot: Volume: %(volumename)s  "
+"Snapshot:%(snapshotname)s.  Return code: %(rc)lu.Error: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:268
 #, python-format
@@ -5915,6 +6071,9 @@ msgid ""
 "%(snapshotname)s.  Successfully clone volume from snapshot.  Finding the "
 "clone relationship."
 msgstr ""
+"Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
+"%(snapshotname)s.  Successfully clone volume from snapshot.  Finding the "
+"clone relationship."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:280
 #, python-format
@@ -5924,6 +6083,10 @@ msgid ""
 "ModifyReplicaSynchronization ReplicationService: %(service)s  Operation: "
 "8  Synchronization: %(sync_name)s"
 msgstr ""
+"Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
+"%(snapshotname)s.  Remove the clone relationship. Method: "
+"ModifyReplicaSynchronization ReplicationService: %(service)s  Operation: "
+"8  Synchronisation: %(sync_name)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:296
 #, python-format
@@ -5931,6 +6094,8 @@ msgid ""
 "Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu"
 msgstr ""
+"Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
+"%(snapshotname)s  Return code: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:305
 #, python-format
@@ -5938,6 +6103,8 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s.  Return code: %(rc)lu.  Error: %(error)s"
 msgstr ""
+"Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
+"%(snapshotname)s.  Return code: %(rc)lu.  Error: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:317
 #, python-format
@@ -5945,10 +6112,12 @@ msgid ""
 "Leaving create_volume_from_snapshot: Volume: %(volumename)s Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu."
 msgstr ""
+"Leaving create_volume_from_snapshot: Volume: %(volumename)s Snapshot: "
+"%(snapshotname)s  Return code: %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:328
 msgid "Entering create_cloned_volume."
-msgstr ""
+msgstr "Entering create_cloned_volume."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:333
 #, python-format
@@ -5956,6 +6125,8 @@ msgid ""
 "Create a Clone from Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s"
 msgstr ""
+"Create a Clone from Volume: Volume: %(volumename)s  Source Volume: "
+"%(srcname)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:343
 #, python-format
@@ -5963,6 +6134,8 @@ msgid ""
 "Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
 "  Source Instance: %(src_instance)s  Storage System: %(storage_system)s."
 msgstr ""
+"Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
+"  Source Instance: %(src_instance)s  Storage System: %(storage_system)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:353
 #, python-format
@@ -5970,6 +6143,8 @@ msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s. Cannot find Replication Service to create cloned volume."
 msgstr ""
+"Error Create Cloned Volume: Volume: %(volumename)s  Source Volume: "
+"%(srcname)s. Cannot find Replication Service to create cloned volume."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:362
 #, python-format
@@ -5979,6 +6154,10 @@ msgid ""
 "ElementName: %(elementname)s  SyncType: 8  SourceElement: "
 "%(sourceelement)s"
 msgstr ""
+"Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
+"  Method: CreateElementReplica  ReplicationService: %(service)s  "
+"ElementName: %(elementname)s  SyncType: 8  SourceElement: "
+"%(sourceelement)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:383
 #, python-format
@@ -5986,6 +6165,8 @@ msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source "
 "Volume:%(srcname)s.  Return code: %(rc)lu.Error: %(error)s"
 msgstr ""
+"Error Create Cloned Volume: Volume: %(volumename)s  Source "
+"Volume:%(srcname)s.  Return code: %(rc)lu.Error: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:409
 #, python-format
@@ -5994,15 +6175,22 @@ msgid ""
 "  Successfully cloned volume from source volume.  Finding the clone "
 "relationship."
 msgstr ""
+"Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s."
+"  Successfully cloned volume from source volume.  Finding the clone "
+"relationship."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:421
 #, python-format
 msgid ""
 "Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s."
 "  Remove the clone relationship. Method: ModifyReplicaSynchronization "
-"ReplicationService: %(service)s  Operation: 8  Synchronization: "
+"ReplicationService: %(service)s  Operation: 8  Synchronization: "
+"%(sync_name)s"
+msgstr ""
+"Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s."
+"  Remove the clone relationship. Method: ModifyReplicaSynchronization "
+"ReplicationService: %(service)s  Operation: 8  Synchronisation: "
 "%(sync_name)s"
-msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:437
 #, python-format
@@ -6010,6 +6198,8 @@ msgid ""
 "Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
 "  Return code: %(rc)lu"
 msgstr ""
+"Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
+"  Return code: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:446
 #, python-format
@@ -6017,6 +6207,8 @@ msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s.  Return code: %(rc)lu.  Error: %(error)s"
 msgstr ""
+"Error Create Cloned Volume: Volume: %(volumename)s  Source Volume: "
+"%(srcname)s.  Return code: %(rc)lu.  Error: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:458
 #, python-format
@@ -6024,21 +6216,23 @@ msgid ""
 "Leaving create_cloned_volume: Volume: %(volumename)s Source Volume: "
 "%(srcname)s  Return code: %(rc)lu."
 msgstr ""
+"Leaving create_cloned_volume: Volume: %(volumename)s Source Volume: "
+"%(srcname)s  Return code: %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:469
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:178
 msgid "Entering delete_volume."
-msgstr ""
+msgstr "Entering delete_volume."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:471
 #, python-format
 msgid "Delete Volume: %(volume)s"
-msgstr ""
+msgstr "Delete Volume: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:478
 #, python-format
 msgid "Volume %(name)s not found on the array. No volume to delete."
-msgstr ""
+msgstr "Volume %(name)s not found on the array. No volume to delete."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:488
 #, python-format
@@ -6046,11 +6240,13 @@ msgid ""
 "Error Delete Volume: %(volumename)s. Storage Configuration Service not "
 "found."
 msgstr ""
+"Error Delete Volume: %(volumename)s. Storage Configuration Service not "
+"found."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:496
 #, python-format
 msgid "Delete Volume: %(name)s  DeviceID: %(deviceid)s"
-msgstr ""
+msgstr "Delete Volume: %(name)s  DeviceID: %(deviceid)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:500
 #, python-format
@@ -6058,6 +6254,8 @@ msgid ""
 "Delete Volume: %(name)s  Method: EMCReturnToStoragePool ConfigServic: "
 "%(service)s  TheElement: %(vol_instance)s"
 msgstr ""
+"Delete Volume: %(name)s  Method: EMCReturnToStoragePool ConfigServic: "
+"%(service)s  TheElement: %(vol_instance)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:514
 #, python-format
@@ -6065,35 +6263,37 @@ msgid ""
 "Error Delete Volume: %(volumename)s.  Return code: %(rc)lu.  Error: "
 "%(error)s"
 msgstr ""
+"Error Delete Volume: %(volumename)s.  Return code: %(rc)lu.  Error: "
+"%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:523
 #, python-format
 msgid "Leaving delete_volume: %(volumename)s  Return code: %(rc)lu"
-msgstr ""
+msgstr "Leaving delete_volume: %(volumename)s  Return code: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:530
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:275
 msgid "Entering create_snapshot."
-msgstr ""
+msgstr "Entering create_snapshot."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:534
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:278
 #, python-format
 msgid "Create snapshot: %(snapshot)s: volume: %(volume)s"
-msgstr ""
+msgstr "Create snapshot: %(snapshot)s: volume: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:544
 #: cinder/volume/drivers/emc/emc_smis_common.py:972
 #, python-format
 msgid "Device ID: %(deviceid)s: Storage System: %(storagesystem)s"
-msgstr ""
+msgstr "Device ID: %(deviceid)s: Storage System: %(storagesystem)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:551
 #: cinder/volume/drivers/emc/emc_smis_common.py:553
 #: cinder/volume/drivers/emc/emc_smis_common.py:639
 #, python-format
 msgid "Cannot find Replication Service to create snapshot for volume %s."
-msgstr ""
+msgstr "Cannot find Replication Service to create snapshot for volume %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:558
 #, python-format
@@ -6102,6 +6302,9 @@ msgid ""
 "Source: %(volume)s  Replication Service: %(service)s  ElementName: "
 "%(elementname)s  Sync Type: 7  SourceElement: %(sourceelement)s."
 msgstr ""
+"Create Snapshot:  Method: CreateElementReplica: Target: %(snapshot)s  "
+"Source: %(volume)s  Replication Service: %(service)s  ElementName: "
+"%(elementname)s  Sync Type: 7  SourceElement: %(sourceelement)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:574
 #, python-format
@@ -6109,6 +6312,8 @@ msgid ""
 "Create Snapshot: Volume: %(volumename)s  Snapshot: %(snapshotname)s  "
 "Return code: %(rc)lu"
 msgstr ""
+"Create Snapshot: Volume: %(volumename)s  Snapshot: %(snapshotname)s  "
+"Return code: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:583
 #, python-format
@@ -6123,17 +6328,19 @@ msgid ""
 "Leaving create_snapshot: Snapshot: %(snapshot)s Volume: %(volume)s  "
 "Return code: %(rc)lu."
 msgstr ""
+"Leaving create_snapshot: Snapshot: %(snapshot)s Volume: %(volume)s  "
+"Return code: %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:613
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:302
 msgid "Entering delete_snapshot."
-msgstr ""
+msgstr "Entering delete_snapshot."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:617
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:306
 #, python-format
 msgid "Delete Snapshot: %(snapshot)s: volume: %(volume)s"
-msgstr ""
+msgstr "Delete Snapshot: %(snapshot)s: volume: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:623
 #, python-format
@@ -6141,6 +6348,8 @@ msgid ""
 "Delete Snapshot: %(snapshot)s: volume: %(volume)s. Finding "
 "StorageSychronization_SV_SV."
 msgstr ""
+"Delete Snapshot: %(snapshot)s: volume: %(volume)s. Finding "
+"StorageSychronization_SV_SV."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:631
 #, python-format
@@ -6148,6 +6357,8 @@ msgid ""
 "Snapshot: %(snapshot)s: volume: %(volume)s not found on the array. No "
 "snapshot to delete."
 msgstr ""
+"Snapshot: %(snapshot)s: volume: %(volume)s not found on the array. No "
+"snapshot to delete."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:646
 #, python-format
@@ -6156,6 +6367,9 @@ msgid ""
 "ModifyReplicaSynchronization:  Replication Service: %(service)s  "
 "Operation: 19  Synchronization: %(sync_name)s."
 msgstr ""
+"Delete Snapshot: Target: %(snapshot)s  Source: %(volume)s.  Method: "
+"ModifyReplicaSynchronization:  Replication Service: %(service)s  "
+"Operation: 19  Synchronisation: %(sync_name)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:662
 #, python-format
@@ -6163,6 +6377,8 @@ msgid ""
 "Delete Snapshot: Volume: %(volumename)s  Snapshot: %(snapshotname)s  "
 "Return code: %(rc)lu"
 msgstr ""
+"Delete Snapshot: Volume: %(volumename)s  Snapshot: %(snapshotname)s  "
+"Return code: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:671
 #, python-format
@@ -6170,6 +6386,8 @@ msgid ""
 "Error Delete Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s. Return code: %(rc)lu. Error: %(error)s"
 msgstr ""
+"Error Delete Snapshot: Volume: %(volumename)s  Snapshot: "
+"%(snapshotname)s. Return code: %(rc)lu. Error: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:696
 #: cinder/volume/drivers/emc/emc_smis_common.py:711
@@ -6197,6 +6415,8 @@ msgid ""
 "Leaving delete_snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu."
 msgstr ""
+"Leaving delete_snapshot: Volume: %(volumename)s  Snapshot: "
+"%(snapshotname)s  Return code: %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:745
 #, python-format
@@ -6204,21 +6424,23 @@ msgid ""
 "ExposePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(lun_name)s"
 "  InitiatorPortIDs: %(initiator)s  DeviceAccesses: 2"
 msgstr ""
+"ExposePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(lun_name)s"
+"  InitiatorPortIDs: %(initiator)s  DeviceAccesses: 2"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:760
 #, python-format
 msgid "ExposePaths parameter LunMaskingSCSIProtocolController: %(lunmasking)s"
-msgstr ""
+msgstr "ExposePaths parameter LunMaskingSCSIProtocolController: %(lunmasking)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:771
 #, python-format
 msgid "Error mapping volume %s."
-msgstr ""
+msgstr "Error mapping volume %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:775
-#, fuzzy, python-format
+#, python-format
 msgid "ExposePaths for volume %s completed successfully."
-msgstr "ExposePaths for volume %s completed successfully."
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:791
 #, python-format
@@ -6226,16 +6448,18 @@ msgid ""
 "HidePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(device_id)s  "
 "LunMaskingSCSIProtocolController: %(lunmasking)s"
 msgstr ""
+"HidePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(device_id)s  "
+"LunMaskingSCSIProtocolController: %(lunmasking)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:804
 #, python-format
 msgid "Error unmapping volume %s."
-msgstr ""
+msgstr "Error unmapping volume %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:808
-#, fuzzy, python-format
+#, python-format
 msgid "HidePaths for volume %s completed successfully."
-msgstr "HidePaths for volume %s completed successfully."
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:821
 #, python-format
@@ -6243,16 +6467,18 @@ msgid ""
 "AddMembers: ConfigServicie: %(service)s  MaskingGroup: %(masking_group)s"
 "  Members: %(vol)s"
 msgstr ""
+"AddMembers: ConfigServicie: %(service)s  MaskingGroup: %(masking_group)s"
+"  Members: %(vol)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:836
 #, python-format
 msgid "Error mapping volume %(vol)s. %(error)s"
-msgstr ""
+msgstr "Error mapping volume %(vol)s. %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:841
-#, fuzzy, python-format
+#, python-format
 msgid "AddMembers for volume %s completed successfully."
-msgstr "AddMembers for volume %s completed successfully."
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:854
 #, python-format
@@ -6260,52 +6486,54 @@ msgid ""
 "RemoveMembers: ConfigServicie: %(service)s  MaskingGroup: "
 "%(masking_group)s  Members: %(vol)s"
 msgstr ""
+"RemoveMembers: ConfigServicie: %(service)s  MaskingGroup: "
+"%(masking_group)s  Members: %(vol)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:867
 #, python-format
 msgid "Error unmapping volume %(vol)s. %(error)s"
-msgstr ""
+msgstr "Error unmapping volume %(vol)s. %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:872
-#, fuzzy, python-format
+#, python-format
 msgid "RemoveMembers for volume %s completed successfully."
-msgstr "RemoveMembers for volume %s completed successfully."
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:878
 #, python-format
 msgid "Map volume: %(volume)s"
-msgstr ""
+msgstr "Map volume: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:887
 #: cinder/volume/drivers/emc/emc_smis_common.py:917
 #, python-format
 msgid "Cannot find Controller Configuration Service for storage system %s"
-msgstr ""
+msgstr "Cannot find Controller Configuration Service for storage system %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:901
 #, python-format
 msgid "Unmap volume: %(volume)s"
-msgstr ""
+msgstr "Unmap volume: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:907
 #, python-format
 msgid "Volume %s is not mapped. No volume to unmap."
-msgstr ""
+msgstr "Volume %s is not mapped. No volume to unmap."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:931
 #, python-format
 msgid "Initialize connection: %(volume)s"
-msgstr ""
+msgstr "Initialise connection: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:937
 #, python-format
 msgid "Volume %s is already mapped."
-msgstr ""
+msgstr "Volume %s is already mapped."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:949
 #, python-format
 msgid "Terminate connection: %(volume)s"
-msgstr ""
+msgstr "Terminate connection: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:956
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:197
@@ -6361,16 +6589,16 @@ msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1063
 msgid "Storage type not found."
-msgstr ""
+msgstr "Storage type not found."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1079
 #, python-format
 msgid "Found Masking View: %s"
-msgstr ""
+msgstr "Found Masking View: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1082
 msgid "Masking View not found."
-msgstr ""
+msgstr "Masking View not found."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1097
 #, python-format
@@ -6383,75 +6611,75 @@ msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1122
 msgid "Ecom user not found."
-msgstr ""
+msgstr "Ecom user not found."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1142
 #, python-format
 msgid "Ecom IP: %(ecomIp)s Port: %(ecomPort)s"
-msgstr ""
+msgstr "Ecom IP: %(ecomIp)s Port: %(ecomPort)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1146
 msgid "Ecom server not found."
-msgstr ""
+msgstr "Ecom server not found."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1153
 msgid "Cannot connect to ECOM server"
-msgstr ""
+msgstr "Cannot connect to ECOM server"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1165
 #, python-format
 msgid "Found Replication Service: %s"
-msgstr ""
+msgstr "Found Replication Service: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1178
 #, python-format
 msgid "Found Storage Configuration Service: %s"
-msgstr ""
+msgstr "Found Storage Configuration Service: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1191
 #, python-format
 msgid "Found Controller Configuration Service: %s"
-msgstr ""
+msgstr "Found Controller Configuration Service: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1204
 #, python-format
 msgid "Found Storage Hardware ID Management Service: %s"
-msgstr ""
+msgstr "Found Storage Hardware ID Management Service: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1248
 #, python-format
 msgid "Pool %(storage_type)s is not found."
-msgstr ""
+msgstr "Pool %(storage_type)s is not found."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1254
 #, python-format
 msgid "Storage system not found for pool %(storage_type)s."
-msgstr ""
+msgstr "Storage system not found for pool %(storage_type)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1260
 #, python-format
 msgid "Pool: %(pool)s  SystemName: %(systemname)s."
-msgstr ""
+msgstr "Pool: %(pool)s  SystemName: %(systemname)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1277
 #, python-format
 msgid "Pool name: %(poolname)s  System name: %(systemname)s."
-msgstr ""
+msgstr "Pool name: %(poolname)s  System name: %(systemname)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1292
 #, python-format
 msgid "Volume %(volumename)s not found on the array."
-msgstr ""
+msgstr "Volume %(volumename)s not found on the array."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1295
 #, python-format
 msgid "Volume name: %(volumename)s  Volume instance: %(vol_instance)s."
-msgstr ""
+msgstr "Volume name: %(volumename)s  Volume instance: %(vol_instance)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1310
 #, python-format
 msgid "Source: %(volumename)s  Target: %(snapshotname)s."
-msgstr ""
+msgstr "Source: %(volumename)s  Target: %(snapshotname)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1322
 #, python-format
@@ -6459,6 +6687,8 @@ msgid ""
 "Source: %(volumename)s  Target: %(snapshotname)s. Storage Synchronized "
 "not found. "
 msgstr ""
+"Source: %(volumename)s  Target: %(snapshotname)s. Storage Synchronised "
+"not found. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1327
 #, python-format
@@ -6466,16 +6696,18 @@ msgid ""
 "Storage system: %(storage_system)s  Storage Synchronized instance: "
 "%(sync)s."
 msgstr ""
+"Storage system: %(storage_system)s  Storage Synchronised instance: "
+"%(sync)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1353
 #, python-format
 msgid "Error finding %s."
-msgstr ""
+msgstr "Error finding %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1357
 #, python-format
 msgid "Found %(name)s: %(initiator)s."
-msgstr ""
+msgstr "Found %(name)s: %(initiator)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1417
 #, python-format
@@ -6483,6 +6715,8 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage system %(storage_system)s "
 "and initiator %(initiator)s is  %(ctrl)s."
 msgstr ""
+"LunMaskingSCSIProtocolController for storage system %(storage_system)s "
+"and initiator %(initiator)s is  %(ctrl)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1458
 #, python-format
@@ -6490,6 +6724,8 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage volume %(vol)s and initiator"
 " %(initiator)s is  %(ctrl)s."
 msgstr ""
+"LunMaskingSCSIProtocolController for storage volume %(vol)s and initiator"
+" %(initiator)s is  %(ctrl)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1472
 #, python-format
@@ -6497,6 +6733,8 @@ msgid ""
 "Volume %(name)s not found on the array. Cannot determine if there are "
 "volumes mapped."
 msgstr ""
+"Volume %(name)s not found on the array. Cannot determine if there are "
+"volumes mapped."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1484
 #, python-format
@@ -6504,6 +6742,8 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage system %(storage)s and "
 "%(connector)s is %(ctrl)s."
 msgstr ""
+"LunMaskingSCSIProtocolController for storage system %(storage)s and "
+"%(connector)s is %(ctrl)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1496
 #, python-format
@@ -6511,11 +6751,13 @@ msgid ""
 "Found %(numVolumesMapped)d volumes on storage system %(storage)s mapped "
 "to %(initiator)s."
 msgstr ""
+"Found %(numVolumesMapped)d volumes on storage system %(storage)s mapped "
+"to %(initiator)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1531
 #, python-format
 msgid "Available device number on %(storage)s: %(device)s."
-msgstr ""
+msgstr "Available device number on %(storage)s: %(device)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1556
 #, python-format
@@ -6527,27 +6769,27 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_smis_common.py:1592
 #, python-format
 msgid "Device number not found for volume %(volumename)s %(vol_instance)s."
-msgstr ""
+msgstr "Device number not found for volume %(volumename)s %(vol_instance)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1597
 #, python-format
 msgid "Found device number %(device)d for volume %(volumename)s %(vol_instance)s."
-msgstr ""
+msgstr "Found device number %(device)d for volume %(volumename)s %(vol_instance)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1607
 #, python-format
 msgid "Device info: %(data)s."
-msgstr ""
+msgstr "Device info: %(data)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1629
 #, python-format
 msgid "Masking view: %(view)s DeviceMaskingGroup: %(masking)s."
-msgstr ""
+msgstr "Masking view: %(view)s DeviceMaskingGroup: %(masking)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1651
 #, python-format
 msgid "Found Storage Processor System: %s"
-msgstr ""
+msgstr "Found Storage Processor System: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1679
 #, python-format
@@ -6555,10 +6797,12 @@ msgid ""
 "iSCSIProtocolEndpoint for storage system %(storage_system)s and SP %(sp)s"
 " is  %(endpoint)s."
 msgstr ""
+"iSCSIProtocolEndpoint for storage system %(storage_system)s and SP %(sp)s"
+" is  %(endpoint)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1720
 msgid "Error finding Storage Hardware ID Service."
-msgstr ""
+msgstr "Error finding Storage Hardware ID Service."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1726
 #, python-format
@@ -6566,41 +6810,43 @@ msgid ""
 "EMCGetTargetEndpoints: Service: %(service)s  Storage HardwareIDs: "
 "%(hardwareids)s."
 msgstr ""
+"EMCGetTargetEndpoints: Service: %(service)s  Storage HardwareIDs: "
+"%(hardwareids)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1738
 msgid "Error finding Target WWNs."
-msgstr ""
+msgstr "Error finding Target WWNs."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1748
 #, python-format
 msgid "Add target WWN: %s."
-msgstr ""
+msgstr "Add target WWN: %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1750
 #, python-format
 msgid "Target WWNs: %s."
-msgstr ""
+msgstr "Target WWNs: %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1766
 #, python-format
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
-msgstr ""
+msgstr "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
-msgstr ""
+msgstr "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
-msgstr ""
+msgstr "ISCSI properties: %s"
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:77
 msgid "Pool name is not specified."
@@ -6681,7 +6927,7 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:251
 #, python-format
 msgid "create_export: Volume: %(volume)s  Device ID: %(device_id)s"
-msgstr ""
+msgstr "create_export: Volume: %(volume)s  Device ID: %(device_id)s"
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:292
 #, python-format
@@ -6881,93 +7127,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
-#, fuzzy, python-format
+#: cinder/volume/drivers/hds/hds.py:251
+#, python-format
 msgid "HDP not found: %s"
-msgstr "HDP not found: %s"
+msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7055,7 +7301,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7122,7 +7368,7 @@ msgstr ""
 #: cinder/volume/drivers/huawei/rest_common.py:327
 #, python-format
 msgid "create_snapshot:snapshot name:%(snapshot)s, volume name:%(volume)s."
-msgstr ""
+msgstr "create_snapshot:snapshot name:%(snapshot)s, volume name:%(volume)s."
 
 #: cinder/volume/drivers/huawei/rest_common.py:354
 #, python-format
@@ -7165,7 +7411,7 @@ msgstr ""
 #: cinder/volume/drivers/huawei/rest_common.py:874
 #, python-format
 msgid "terminate_connection:volume name: %(volume)s, initiator name: %(ini)s."
-msgstr ""
+msgstr "terminate_connection:volume name: %(volume)s, initiator name: %(ini)s."
 
 #: cinder/volume/drivers/huawei/rest_common.py:937
 #, python-format
@@ -7224,7 +7470,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7255,12 +7501,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7293,7 +7539,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7304,111 +7550,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7416,77 +7662,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7640,97 +7886,97 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
-msgstr ""
+msgstr "%s is not set"
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:143
 msgid "enter: do_setup"
-msgstr ""
+msgstr "enter: do_setup"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:153
 #, python-format
@@ -7743,11 +7989,11 @@ msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:214
 msgid "leave: do_setup"
-msgstr ""
+msgstr "leave: do_setup"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:218
 msgid "enter: check_for_setup_error"
-msgstr ""
+msgstr "enter: check_for_setup_error"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:222
 msgid "Unable to determine system name"
@@ -7762,6 +8008,8 @@ msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 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:246
 #, python-format
@@ -7769,15 +8017,17 @@ msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 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:254
 msgid "leave: check_for_setup_error"
-msgstr ""
+msgstr "leave: check_for_setup_error"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:264
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
-msgstr ""
+msgstr "ensure_export: Volume %s not found on storage"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:283
 msgid "The connector does not contain the required information."
@@ -7786,7 +8036,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:307
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "enter: initialise_connection: volume %(vol)s with connector %(conn)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:338
 msgid "CHAP secret exists for host but CHAP is disabled"
@@ -7795,17 +8045,17 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:343
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
-msgstr ""
+msgstr "initialise_connection: Failed to get attributes for volume %s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:355
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
-msgstr ""
+msgstr "Did not find expected column name in lsvdisk: %s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:357
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
-msgstr ""
+msgstr "initialise_connection: Missing volume attribute for volume %s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:374
 #, python-format
@@ -7813,11 +8063,13 @@ msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
+"initialise_connection: No node found in I/O group %(gid)s for volume "
+"%(vol)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
-msgstr ""
+msgstr "initialise_connection: Did not find a preferred node for volume %s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:406
 msgid ""
@@ -7825,14 +8077,23 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
+"initialise_connection: Failed to collect return properties for volume "
+"%(vol)s and connector %(conn)s.\n"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7840,101 +8101,110 @@ msgid ""
 " connector %(conn)s\n"
 " properties: %(prop)s"
 msgstr ""
+"leave: initialise_connection:\n"
+" volume: %(vol)s\n"
+" connector %(conn)s\n"
+" properties: %(prop)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
-msgstr ""
+msgstr "create_volume_from_snapshot: Source and destination size differ."
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
-msgstr ""
+msgstr "create_cloned_volume: Source and destination size differ."
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7942,31 +8212,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
-msgstr ""
+msgstr "Could not get pool data from the storage"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7988,7 +8265,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:143
 #, python-format
 msgid "WWPN on node %(node)s: %(wwpn)s"
-msgstr ""
+msgstr "WWPN on node %(node)s: %(wwpn)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:165
 #, python-format
@@ -8069,26 +8346,32 @@ msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 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:388
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
+"Illegal value specified for storwize_svc_vol_warning: set to a percentage"
+" (0-100)"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:395
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 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:402
 msgid "System does not support compression"
-msgstr ""
+msgstr "System does not support compression"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:407
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
-msgstr ""
+msgstr "If compression is set to True, rsize must also be set (not equal to -1)"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:413
 #, python-format
@@ -8096,6 +8379,8 @@ msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
+"Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
+"valid values are %(enabled)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:422
 #, python-format
@@ -8114,7 +8399,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:504
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
-msgstr ""
+msgstr "leave: _create_vdisk: volume %s "
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:531
 #, python-format
@@ -8150,7 +8435,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:601
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
-msgstr ""
+msgstr "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:637
 #, python-format
@@ -8187,15 +8472,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8207,18 +8499,13 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:213
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:250
-#, fuzzy, python-format
+#, python-format
 msgid ""
 "CLI Exception output:\n"
 " command: %(cmd)s\n"
 " stdout: %(out)s\n"
 " stderr: %(err)s"
 msgstr ""
-"%(description)s\n"
-"Command: %(cmd)s\n"
-"Exit code: %(exit_code)s\n"
-"Stdout: %(stdout)r\n"
-"Stderr: %(stderr)r"
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:53
 #, python-format
@@ -8250,12 +8537,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -8326,36 +8613,36 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:69
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
-msgstr ""
+msgstr "No metadata property %(prop)s defined for the LUN %(name)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:105
 #, python-format
 msgid "Using NetApp filer: %s"
-msgstr ""
+msgstr "Using NetApp filer: %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:150
 msgid "Success getting LUN list from server"
-msgstr ""
+msgstr "Success getting LUN list from server"
 
 #: cinder/volume/drivers/netapp/iscsi.py:166
 #, python-format
 msgid "Created LUN with name %s"
-msgstr ""
+msgstr "Created LUN with name %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:175
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
-msgstr ""
+msgstr "No entry in LUN table for volume/snapshot %(name)s."
 
 #: cinder/volume/drivers/netapp/iscsi.py:191
-#, fuzzy, python-format
+#, python-format
 msgid "Destroyed LUN %s"
-msgstr "Destroyed LUN %s"
+msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:227
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
-msgstr ""
+msgstr "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
@@ -8367,22 +8654,22 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:238
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
-msgstr ""
+msgstr "Failed to get LUN target details for the LUN %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:249
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
-msgstr ""
+msgstr "Failed to get target portal for the LUN %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:252
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
-msgstr ""
+msgstr "Failed to get target IQN for the LUN %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:290
-#, fuzzy, python-format
+#, python-format
 msgid "Snapshot %s deletion successful"
-msgstr "Snapshot %s deletion successful"
+msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:310
 #: cinder/volume/drivers/netapp/iscsi.py:557
@@ -8395,21 +8682,21 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:325
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
-msgstr ""
+msgstr "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:414
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
-msgstr ""
+msgstr "Error mapping lun. Code :%(code)s, Message:%(message)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:433
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
-msgstr ""
+msgstr "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:503
 msgid "Object is not a NetApp LUN."
-msgstr ""
+msgstr "Object is not a NetApp LUN."
 
 #: cinder/volume/drivers/netapp/iscsi.py:535
 #, python-format
@@ -8508,12 +8795,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:841
 #, python-format
 msgid "No iscsi service found for vserver %s"
-msgstr ""
+msgstr "No iscsi service found for vserver %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1008
 #, python-format
 msgid "Cloned LUN with new name %s"
-msgstr ""
+msgstr "Cloned LUN with new name %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1012
 #, python-format
@@ -8536,9 +8823,9 @@ msgid "Api version could not be determined."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:1190
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get vol with required size for volume: %s"
-msgstr "Failed to get vol with required size for volume: %s"
+msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:1299
 #, python-format
@@ -8548,12 +8835,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:1443
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
-msgstr ""
+msgstr "Clone operation with src %(name)s and dest %(new_name)s completed"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1446
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
-msgstr ""
+msgstr "Clone operation with src %(name)s and dest %(new_name)s failed"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1509
 msgid "Volume refresh job already running. Returning..."
@@ -8692,7 +8979,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:460
 #, python-format
 msgid "Converted to raw, but format is now %s"
-msgstr ""
+msgstr "Converted to raw, but format is now %s"
 
 #: cinder/volume/drivers/netapp/nfs.py:470
 #, python-format
@@ -8770,7 +9057,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:866
 #, python-format
 msgid "No interface found on cluster for ip %s"
-msgstr ""
+msgstr "No interface found on cluster for ip %s"
 
 #: cinder/volume/drivers/netapp/nfs.py:907
 #, python-format
@@ -8915,12 +9202,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:1349
 #, python-format
 msgid "No storage path found for export path %s"
-msgstr ""
+msgstr "No storage path found for export path %s"
 
 #: cinder/volume/drivers/netapp/nfs.py:1359
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
-msgstr ""
+msgstr "Cloning with src %(src_path)s, dest %(dest_path)s"
 
 #: cinder/volume/drivers/netapp/ssc_utils.py:241
 #, python-format
@@ -9289,7 +9576,7 @@ msgstr ""
 #: cinder/volume/drivers/nexenta/iscsi.py:105
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
-msgstr ""
+msgstr "Volume %s does not exist in Nexenta SA"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:151
 #, python-format
@@ -9365,10 +9652,10 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
-msgstr ""
+msgstr "Ignored target creation error \"%s\" while ensuring export"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:486
 #, python-format
@@ -9396,6 +9683,8 @@ msgid ""
 "Got error trying to destroy target group %(target_group)s, assuming it is"
 " already gone: %(exc)s"
 msgstr ""
+"Got error trying to destroy target group %(target_group)s, assuming it is"
+" already gone: %(exc)s"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:559
 #, python-format
@@ -9403,29 +9692,31 @@ msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
 "gone: %(exc)s"
 msgstr ""
+"Got error trying to delete target %(target)s, assuming it is already "
+"gone: %(exc)s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:83
 #, python-format
 msgid "Sending JSON data: %s"
-msgstr ""
+msgstr "Sending JSON data: %s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:88
 msgid "No headers in server response"
-msgstr ""
+msgstr "No headers in server response"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:89
 msgid "Bad response from server"
-msgstr ""
+msgstr "Bad response from server"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:90
 #, python-format
 msgid "Auto switching to HTTPS connection to %s"
-msgstr ""
+msgstr "Auto switching to HTTPS connection to %s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:96
 #, python-format
 msgid "Got response: %s"
-msgstr ""
+msgstr "Got response: %s"
 
 #: cinder/volume/drivers/nexenta/nfs.py:85
 #, python-format
@@ -9488,290 +9779,298 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
-msgstr ""
+msgstr "Specify san_password or san_private_key"
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
-msgstr ""
+msgstr "san_ip must be set"
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
-msgstr ""
+msgstr "Cannot parse list-view output: %s"
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
-msgstr ""
+msgstr "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
-msgstr ""
+msgstr "CPG (%s) doesn't exist on array"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
-msgstr ""
+msgstr "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
+"Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
+"invalid."
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
-msgstr ""
+msgstr "Volume (%s) already exists on array"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
-msgstr ""
+msgstr "CLIQ command returned %s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, python-format
 msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
+msgstr "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, python-format
 msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
+msgstr "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
+msgstr "Volume info: %(volume_name)s => %(volume_attributes)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
-msgstr ""
+msgstr "local_path not supported"
 
 #: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:75
 #, python-format
@@ -10163,7 +10462,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10323,7 +10622,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10443,62 +10742,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10724,7 +11023,7 @@ msgstr ""
 
 #: cinder/volume/drivers/vmware/volumeops.py:744
 msgid "Copying disk data before snapshot of the VM"
-msgstr ""
+msgstr "Copying disk data before snapshot of the VM"
 
 #: cinder/volume/drivers/vmware/volumeops.py:754
 #, python-format
@@ -10783,7 +11082,7 @@ msgstr ""
 #: cinder/volume/drivers/windows/windows.py:102
 #, python-format
 msgid "Creating folder %s "
-msgstr ""
+msgstr "Creating folder %s "
 
 #: cinder/volume/drivers/windows/windows_utils.py:47
 #, python-format
@@ -10810,7 +11109,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10818,35 +11117,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10854,42 +11158,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/en_US/LC_MESSAGES/cinder.po b/cinder/locale/en_US/LC_MESSAGES/cinder.po
index e4a473f62..f1476c4be 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-03-29 06:10+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+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"
@@ -742,34 +742,34 @@ msgstr "JSON file representing policy"
 msgid "Rule checked when requested rule is not found"
 msgstr "Rule checked when requested rule is not found"
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -790,17 +790,17 @@ msgstr ""
 "Quota exceeded for %(s_pid)s, tried to create volume (%(d_consumed)d "
 "volumes already consumed)"
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr "Starting %(topic)s node (version %(version_string)s)"
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -809,39 +809,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr "Service killed that has no database entry"
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr "The service database object disappeared, Recreating it."
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr "Recovered model server connection!"
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr "model server went away"
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr "Full set of CONF:"
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1338,26 +1338,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1464,7 +1476,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1714,7 +1726,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr "Removing options '%s' from query"
@@ -1723,28 +1735,28 @@ msgstr "Removing options '%s' from query"
 msgid "Backup status must be available or error"
 msgstr "Backup status must be available or error"
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr "Volume to be backed up must be available"
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr "Backup status must be available"
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr "Backup to be restored has invalid size"
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr "Volume to be restored to must be available"
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
@@ -1753,12 +1765,12 @@ msgstr ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2040,7 +2052,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2105,7 +2117,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2116,237 +2128,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
+#, python-format
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:702
 #, python-format
-msgid "Creating base image='%s'"
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2900,7 +2971,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, 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"
@@ -2924,45 +2995,49 @@ msgstr "Removing iscsi_target for: %s"
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, 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:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr "valid iqn needed for show_target"
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr "Removing iscsi_target for volume: %s"
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr "Creating iscsi_target for volume: %s"
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr "Removing iscsi_target: %s"
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr "Failed to add initiator iqn %s to target"
@@ -3088,11 +3163,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3106,7 +3181,7 @@ msgstr "Id not in sort_keys; is sort_keys unique?"
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr "Unknown sort direction, must be 'desc' or 'asc'"
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3120,50 +3195,50 @@ msgstr "Use of empty request context is deprecated"
 msgid "Unrecognized read_deleted value '%s'"
 msgstr "Unrecognized read_deleted value '%s'"
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 #, fuzzy
 msgid "Volume must be available"
 msgstr "Volume must be available"
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3214,12 +3289,12 @@ msgstr "quota_usages table not dropped"
 msgid "reservations table not dropped"
 msgstr "reservations table not dropped"
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 #, fuzzy
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr "Exception while creating table 'volume_glance_metedata'"
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr "volume_glance_metadata table not dropped"
 
@@ -3451,22 +3526,22 @@ msgstr "Got file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr "Deprecated: %s"
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr "Error loading logging config %(log_config)s: %(err_msg)s"
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr "syslog facility must be one of: %s"
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr "Fatal call to deprecated config: %(msg)s"
@@ -3477,7 +3552,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr "task run outlasted interval by %s sec"
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr "in fixed duration looping call"
 
@@ -3808,12 +3883,12 @@ msgstr "Ignoring %(service_name)s service update from %(host)s"
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr "Received %(service_name)s service update from %(host)s."
 
-#: cinder/scheduler/host_manager.py:297
-#, fuzzy, python-format
-msgid "volume service is down or disabled. (host: %s)"
-msgstr "volume service is down or disabled. (host: %s)"
+#: cinder/scheduler/host_manager.py:299
+#, python-format
+msgid "volume service is down. (host: %s)"
+msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3886,7 +3961,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr "FAKE ISCSI: %s"
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3995,7 @@ msgstr "Faked command raised an exception %s"
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3954,7 +4029,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3963,12 +4038,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr "unrecognized argument %s"
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr "Run CLI command: %s"
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3979,7 +4054,7 @@ msgstr ""
 " stdout: %(stdout)s\n"
 " stderr: %(stderr)s"
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4000,7 +4075,7 @@ msgstr "Given data: %s"
 msgid "Result data: %s"
 msgstr "Result data: %s"
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr "Invalid input"
 
@@ -4270,66 +4345,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4363,20 +4438,20 @@ msgstr "copy_image_to_volume %s."
 msgid "copy_volume_to_image %s."
 msgstr "copy_volume_to_image %s."
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4391,18 +4466,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr "volume %s: removing export"
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4425,7 +4500,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr "ISCSI provider_location not stored, using discovery"
 
@@ -4445,7 +4520,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr "Could not find iSCSI export for volume %s"
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr "ISCSI Discovery: Found %s"
@@ -4454,13 +4529,13 @@ msgstr "ISCSI Discovery: Found %s"
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4468,10 +4543,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr "Driver must implement initialize_connection"
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4512,285 +4594,279 @@ msgstr ""
 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:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr "Driver path %s is deprecated, update your configuration to the new path."
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr "Re-exporting %s volumes"
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr "volume %s stuck in a downloading state"
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr "volume %s: skipping export"
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr "Resuming any in progress delete operations"
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr "Resuming delete on volume: %s"
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr "volume %s: deleting"
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr "volume is not local to this node"
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr "Failed to update usages deleting volume"
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr "volume %s: deleted successfully"
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr "snapshot %s: creating"
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr "snapshot %s: created successfully"
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr "snapshot %s: deleting"
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr "Failed to update usages deleting snapshot"
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr "snapshot %s: deleted successfully"
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr "being attached by another instance"
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, 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:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr "Updating volume status"
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr "Notification {%s} received"
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4845,14 +4921,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr "name cannot be None"
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr "Performing secure delete on volume: %s"
@@ -4980,7 +5056,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -5060,219 +5136,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, 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:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, 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:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr "mount.glusterfs is not installed"
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr "casted to %s"
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, 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:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr "Exception during mounting %s"
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5381,175 +5457,175 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, fuzzy, python-format
 msgid "error opening rbd image %s"
 msgstr "error opening rbd image %s"
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 #, fuzzy
 msgid "error connecting to ceph cluster"
 msgstr "error connecting to ceph cluster"
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr "error refreshing volume stats"
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, fuzzy, python-format
 msgid "connection data: %s"
 msgstr "connection data: %s"
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr "Not stored in rbd"
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr "Blank components"
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr "Not an rbd snapshot"
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, fuzzy, python-format
 msgid "not cloneable: %s"
 msgstr "not cloneable: %s"
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr "%s is in a different ceph cluster"
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, fuzzy, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr "Unable to open image %(loc)s: %(err)s"
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5716,8 +5792,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr "Volume ID %s was not found on the SolidFire Cluster!"
@@ -5750,12 +5826,12 @@ msgstr "Updating cluster status info"
 msgid "Failed to get updated stats"
 msgstr "Failed to get updated stats"
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5826,19 +5902,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr "Could not find iSCSI export  for volume %s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr "Cannot find device number for volume %s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr "Found iSCSI endpoint: %s"
@@ -6758,18 +6834,18 @@ msgstr "Target WWNs: %s."
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr "ISCSI properties: %s"
@@ -7053,93 +7129,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, fuzzy, python-format
 msgid "XML exception reading parameter: %s"
 msgstr "XML exception reading parameter: %s"
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, fuzzy, python-format
 msgid "No configuration found for service: %s"
 msgstr "No configuration found for service: %s"
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, fuzzy, python-format
 msgid "HDP not found: %s"
 msgstr "HDP not found: %s"
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, fuzzy, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr "iSCSI portal not found for service: %s"
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, fuzzy, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr "delete lun %(lun)s on %(name)s"
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, fuzzy, python-format
 msgid "LUN %s is deleted."
 msgstr "LUN %s is deleted."
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7227,7 +7303,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7396,7 +7472,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7427,12 +7503,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7465,7 +7541,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7476,111 +7552,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7588,77 +7664,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7812,90 +7888,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr "%s is not set"
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -8003,7 +8079,14 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
@@ -8012,7 +8095,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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -8025,100 +8108,105 @@ msgstr ""
 " connector %(conn)s\n"
 " properties: %(prop)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, 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:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, 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:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 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:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 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:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -8126,31 +8214,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 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:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8379,15 +8474,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8441,12 +8543,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9556,7 +9658,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr "Ignored target creation error \"%s\" while ensuring export"
@@ -9683,87 +9785,91 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr "Specify san_password or san_private_key"
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr "san_ip must be set"
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr "Cannot parse list-view output: %s"
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 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:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, 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:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
@@ -9772,174 +9878,174 @@ msgstr ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, 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:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr "CLIQ command returned %s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, python-format
 msgid ""
 "Unexpected number of virtual ips for cluster  %(cluster_name)s. "
@@ -9948,27 +10054,27 @@ msgstr ""
 "Unexpected number of virtual ips for cluster  %(cluster_name)s. "
 "Result=%(_xml)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, 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:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr "local_path not supported"
 
@@ -10362,7 +10468,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10522,7 +10628,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10642,62 +10748,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -11009,7 +11115,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -11017,35 +11123,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -11053,42 +11164,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/es/LC_MESSAGES/cinder.po b/cinder/locale/es/LC_MESSAGES/cinder.po
index e12e5f9ce..3c4b31849 100644
--- a/cinder/locale/es/LC_MESSAGES/cinder.po
+++ b/cinder/locale/es/LC_MESSAGES/cinder.po
@@ -1,16 +1,18 @@
-# Spanish translation for cinder
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the cinder package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+# Spanish translations for cinder.
+# Copyright (C) 2014 ORGANIZATION
+# This file is distributed under the same license as the cinder project.
 #
+# Translators:
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011
 msgid ""
 msgstr ""
-"Project-Id-Version:  cinder\n"
-"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-03-29 06:10+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"
+"Project-Id-Version:  Cinder\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-12 01:30+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
+"Language-Team: Spanish "
+"(http://www.transifex.com/projects/p/cinder/language/es/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -20,12 +22,12 @@ msgstr ""
 #: cinder/context.py:63
 #, python-format
 msgid "Arguments dropped when creating context: %s"
-msgstr ""
+msgstr "Argumentos descartados al crear contexto: %s"
 
 #: cinder/context.py:107
 #, python-format
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
-msgstr ""
+msgstr "read_deleted solo puede ser 'no', 'yes' o 'only', no %r"
 
 #: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
@@ -33,12 +35,14 @@ msgstr "Una excepcion desconocida ha ocurrido"
 
 #: cinder/exception.py:88
 msgid "Exception in string format operation"
-msgstr ""
+msgstr "Excepción en la operación de formato de serie"
 
 #: cinder/exception.py:107
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
+"Respuesta errónea o inesperada de la API de programa de fondo del volumen"
+" de almacenamiento: %(data)s"
 
 #: cinder/exception.py:112
 #, python-format
@@ -66,12 +70,12 @@ msgstr "El usuario no tiene privilegios de administrador"
 #: cinder/exception.py:133
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
-msgstr ""
+msgstr "La política no permite realizar %(action)s. "
 
 #: cinder/exception.py:137
-#, fuzzy, python-format
+#, python-format
 msgid "Not authorized for image %(image_id)s."
-msgstr "no hay método para el mensaje: %s"
+msgstr "No está autorizado para la imagen %(image_id)s."
 
 #: cinder/exception.py:141
 msgid "Volume driver not ready."
@@ -95,20 +99,21 @@ msgstr ""
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
+"El volumen %(volume_id)s todavía están conectados, en primer lugar "
+"desconecte el volumen."
 
 #: cinder/exception.py:163
 msgid "Failed to load data into json format"
 msgstr "Fallo al ingresar informacion en formato json"
 
 #: cinder/exception.py:167
-#, fuzzy
 msgid "The results are invalid."
-msgstr "La petición es inválida."
+msgstr "Los resultados no son válidos."
 
 #: cinder/exception.py:171
 #, python-format
 msgid "Invalid input received: %(reason)s"
-msgstr ""
+msgstr "Entrada inválida recibida: %(reason)s"
 
 #: cinder/exception.py:175
 #, python-format
@@ -118,7 +123,7 @@ msgstr ""
 #: cinder/exception.py:179
 #, python-format
 msgid "Invalid volume: %(reason)s"
-msgstr ""
+msgstr "Volumen inválido: %(reason)s"
 
 #: cinder/exception.py:183
 #, python-format
@@ -133,7 +138,7 @@ msgstr ""
 #: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
-msgstr ""
+msgstr "%(err)s"
 
 #: cinder/exception.py:197
 #, python-format
@@ -152,7 +157,7 @@ msgstr "El servicio no esta disponible en este momento"
 #: cinder/exception.py:210
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
-msgstr ""
+msgstr "La imagen %(image_id)s es inaceptable: %(reason)s"
 
 #: cinder/exception.py:214
 #, python-format
@@ -162,21 +167,21 @@ msgstr ""
 #: cinder/exception.py:218
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
-msgstr ""
+msgstr "Se esperaba un uuid pero se ha recibido %(uuid)s."
 
 #: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
-msgstr ""
+msgstr "No se ha podido encontrar el recurso."
 
 #: cinder/exception.py:228
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
-msgstr ""
+msgstr "El volumen %(volume_id)s no se ha podido encontrar."
 
 #: cinder/exception.py:232
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
-msgstr ""
+msgstr "El volumen %(volume_id)s no tiene metadatos con la clave %(metadata_key)s."
 
 #: cinder/exception.py:237
 #, python-format
@@ -188,27 +193,31 @@ msgstr ""
 #: cinder/exception.py:242
 #, python-format
 msgid "Invalid metadata: %(reason)s"
-msgstr ""
+msgstr "Metadatos inválidos: %(reason)s"
 
 #: cinder/exception.py:246
 #, python-format
 msgid "Invalid metadata size: %(reason)s"
-msgstr ""
+msgstr "Tamaño de metadatos inválido: %(reason)s"
 
 #: cinder/exception.py:250
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
+"La instantánea %(snapshot_id)s no tiene metadatos con la clave "
+"%(metadata_key)s."
 
 #: cinder/exception.py:255
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
-msgstr ""
+msgstr "No se ha podido encontrar el tipo de volumen %(volume_type_id)s."
 
 #: cinder/exception.py:259
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
 msgstr ""
+"No se ha podido encontrar el tipo de volumen con el nombre "
+"%(volume_type_name)s."
 
 #: cinder/exception.py:264
 #, python-format
@@ -216,6 +225,8 @@ msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
+"El tipo de volumen %(volume_type_id)s no tiene especificaciones "
+"adicionales con la clave %(extra_specs_key)s."
 
 #: cinder/exception.py:269
 #, python-format
@@ -227,62 +238,66 @@ msgstr ""
 #: cinder/exception.py:274
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
-msgstr ""
+msgstr "No se ha podido encontrar la instantánea %(snapshot_id)s."
 
 #: cinder/exception.py:278
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
-msgstr ""
+msgstr "suprimiendo el volumen %(volume_name)s que tiene instantánea"
 
 #: cinder/exception.py:282
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
+"suprimiendo la instantánea %(snapshot_name)s que tiene volúmenes "
+"dependientes"
 
 #: cinder/exception.py:287
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
-msgstr ""
+msgstr "No se ha encontrado ningún ID de destino para el volumen %(volume_id)s."
 
 #: cinder/exception.py:291
 #, python-format
 msgid "Invalid image href %(image_href)s."
-msgstr ""
+msgstr "Href de imagen %(image_href)s no válida."
 
 #: cinder/exception.py:295
 #, python-format
 msgid "Image %(image_id)s could not be found."
-msgstr ""
+msgstr "No se ha podido encontrar la imagen %(image_id)s. "
 
 #: cinder/exception.py:299
 #, python-format
 msgid "Service %(service_id)s could not be found."
-msgstr ""
+msgstr "No se ha podido encontrar el servicio %(service_id)s."
 
 #: cinder/exception.py:303
 #, python-format
 msgid "Host %(host)s could not be found."
-msgstr ""
+msgstr "No se ha podido encontrar el host %(host)s."
 
 #: cinder/exception.py:307
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr ""
+"No se ha podido encontrar el filtro de host de planificador "
+"%(filter_name)s."
 
 #: cinder/exception.py:311
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
-msgstr ""
+msgstr "El Scheduler Host Weigher %(weigher_name)s no se ha podido encontrar."
 
 #: cinder/exception.py:315
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
-msgstr ""
+msgstr "No se ha podido encontrar el binario %(binary)s en el host %(host)s."
 
 #: cinder/exception.py:319
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
-msgstr ""
+msgstr "Caducidad de reserva no válida %(expire)s."
 
 #: cinder/exception.py:323
 #, python-format
@@ -290,50 +305,54 @@ msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
+"El cambio produciría un uso inferior a 0 para los recursos siguientes: "
+"%(unders)s."
 
 #: cinder/exception.py:328
 msgid "Quota could not be found"
-msgstr ""
+msgstr "No se ha podido encontrar la cuota"
 
 #: cinder/exception.py:332
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
-msgstr ""
+msgstr "Recursos de cuota desconocidos %(unknown)s."
 
 #: cinder/exception.py:336
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
-msgstr ""
+msgstr "No se ha podido encontrar la cuota para el proyecto %(project_id)s."
 
 #: cinder/exception.py:340
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
-msgstr ""
+msgstr "No se ha podido encontrar la clase de cuota %(class_name)s."
 
 #: cinder/exception.py:344
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
 msgstr ""
+"No se ha podido encontrar el uso de cuota para el proyecto  "
+"%(project_id)s."
 
 #: cinder/exception.py:348
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
-msgstr ""
+msgstr "No se ha podido encontrar la reserva de cuota %(uuid)s."
 
 #: cinder/exception.py:352
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
-msgstr ""
+msgstr "Cuota superada para recursos: %(overs)s"
 
 #: cinder/exception.py:356
 #, python-format
 msgid "File %(file_path)s could not be found."
-msgstr ""
+msgstr "No se ha podido encontrar el archivo %(file_path)s."
 
 #: cinder/exception.py:365
-#, fuzzy, python-format
+#, python-format
 msgid "Volume Type %(id)s already exists."
-msgstr "el grupo %s ya existe"
+msgstr "El tipo de volumen %(id)s ya existe. "
 
 #: cinder/exception.py:369
 #, python-format
@@ -348,32 +367,32 @@ msgstr ""
 #: cinder/exception.py:377
 #, python-format
 msgid "Malformed message body: %(reason)s"
-msgstr ""
+msgstr "Cuerpo de mensaje con formato incorrecto: %(reason)s"
 
 #: cinder/exception.py:381
 #, python-format
 msgid "Could not find config at %(path)s"
-msgstr ""
+msgstr "No se ha podido encontrar configuración en %(path)s"
 
 #: cinder/exception.py:385
-#, fuzzy, python-format
+#, python-format
 msgid "Could not find parameter %(param)s"
-msgstr "Imposible encontrar SR en VBD %s"
+msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
-msgstr ""
+msgstr "No se ha podido cargar aplicación de pegar '%(name)s' desde %(path)s "
 
 #: cinder/exception.py:393
 #, python-format
 msgid "No valid host was found. %(reason)s"
-msgstr ""
+msgstr "No se ha encontrado ningún host válido. %(reason)s"
 
 #: cinder/exception.py:402
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
-msgstr ""
+msgstr "Cuota excedida: código=%(code)s"
 
 #: cinder/exception.py:409
 #, python-format
@@ -385,37 +404,41 @@ msgstr ""
 #: cinder/exception.py:415
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
-msgstr ""
+msgstr "Se ha superado el número máximo de volúmenes permitidos (%(allowed)d)"
 
 #: cinder/exception.py:419
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
-msgstr ""
+msgstr "Se ha superado el número máximo de volúmenes permitidos (%(allowed)d)"
 
 #: cinder/exception.py:423
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
-msgstr ""
+msgstr "Se ha detectado más de un volumen con el nombre %(vol_name)s"
 
 #: cinder/exception.py:427
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
+"No se puede crear el tipo de volumen con el nombre %(name)s y las "
+"especificaciones %(extra_specs)s"
 
 #: cinder/exception.py:432
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
-msgstr ""
+msgstr "Mandato desconocido o no soportado %(cmd)s"
 
 #: cinder/exception.py:436
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
-msgstr ""
+msgstr "Respuesta con formato incorrecto para el mandato %(cmd)s: %(reason)s"
 
 #: cinder/exception.py:440
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
 msgstr ""
+"Se ha encontrado un error en la operación con el estado=%(status)s. "
+"Volcado completo: %(data)s"
 
 #: cinder/exception.py:444
 #, python-format
@@ -423,6 +446,8 @@ msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
+"Los metadatos de Glance no se pueden actualizar, la clave %(key)s existe "
+"para el ID de volumen %(volume_id)s"
 
 #: cinder/exception.py:449
 #, python-format
@@ -450,9 +475,9 @@ msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:469
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to copy image to volume: %(reason)s"
-msgstr "Imposible encontrar volumen %s"
+msgstr ""
 
 #: cinder/exception.py:473
 msgid "Invalid Ceph args provided for backup rbd operation"
@@ -477,16 +502,16 @@ msgstr ""
 #: cinder/exception.py:493
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
-msgstr ""
+msgstr "No se ha podido encontrar la copia de seguridad %(backup_id)s."
 
 #: cinder/exception.py:497
 msgid "Failed to identify volume backend."
 msgstr ""
 
 #: cinder/exception.py:501
-#, fuzzy, python-format
+#, python-format
 msgid "Invalid backup: %(reason)s"
-msgstr "backend inválido: %s"
+msgstr "Copia de seguridad no válida: %(reason)s"
 
 #: cinder/exception.py:505
 #, python-format
@@ -606,39 +631,37 @@ msgid "Zadara Cinder Driver exception."
 msgstr ""
 
 #: cinder/exception.py:611
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to create server object for initiator %(name)s"
-msgstr ""
-"No es posible crear el VDI en SR %(sr_ref)s para la instancia "
-"%(instance_name)s"
+msgstr "No se ha podido crear el objeto de servidor para el iniciador %(name)s"
 
 #: cinder/exception.py:615
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
-msgstr ""
+msgstr "No se ha podido encontrar el objeto de servidor para el iniciador %(name)s"
 
 #: cinder/exception.py:619
 msgid "Unable to find any active VPSA controller"
-msgstr ""
+msgstr "No se ha podido encontrar ningún controlador VPSA activo"
 
 #: cinder/exception.py:623
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
-msgstr ""
+msgstr "No se han podido recuperar los adjuntos para el volumen %(name)s"
 
 #: cinder/exception.py:627
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
-msgstr ""
+msgstr "Información de adjunto no válida para el volumen %(name)s: %(reason)s"
 
 #: cinder/exception.py:631
 #, python-format
 msgid "Bad HTTP response status %(status)s"
-msgstr ""
+msgstr "Estado de respuesta HTTP erróneo %(status)s"
 
 #: cinder/exception.py:636
 msgid "Bad response from SolidFire API"
-msgstr ""
+msgstr "Respuesta errónea de la API SolidFire"
 
 #: cinder/exception.py:640
 msgid "SolidFire Cinder Driver exception"
@@ -647,12 +670,14 @@ msgstr ""
 #: cinder/exception.py:644
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
-msgstr ""
+msgstr "Error en respuesta de API SolidFire: data=%(data)s"
 
 #: cinder/exception.py:648
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
+"No se ha podido localizar la cuenta %(account_name)s en el dispositivo "
+"Solidfire"
 
 #: cinder/exception.py:654
 #, python-format
@@ -660,27 +685,25 @@ msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
 #: cinder/exception.py:659
-#, fuzzy
 msgid "Unknown NFS exception"
-msgstr "Una excepcion desconocida ha ocurrido"
+msgstr "Excepción de NFS desconocida"
 
 #: cinder/exception.py:663
 msgid "No mounted NFS shares found"
-msgstr ""
+msgstr "No se han encontrado unidades compartidas NFS montadas"
 
 #: cinder/exception.py:667 cinder/exception.py:680
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
-msgstr ""
+msgstr "No hay ninguna unidad compartida con este host %(volume_size)sG"
 
 #: cinder/exception.py:672
-#, fuzzy
 msgid "Unknown Gluster exception"
-msgstr "Una excepcion desconocida ha ocurrido"
+msgstr "Excepción de Gluster desconocida"
 
 #: cinder/exception.py:676
 msgid "No mounted Gluster shares found"
-msgstr ""
+msgstr "No se han encontrado unidades compartidas Gluster montadas"
 
 #: cinder/exception.py:684
 #, python-format
@@ -731,44 +754,44 @@ msgstr ""
 
 #: cinder/manager.py:128
 msgid "Notifying Schedulers of capabilities ..."
-msgstr ""
+msgstr "Notificando a planificadores de prestaciones..."
 
 #: cinder/policy.py:30
 msgid "JSON file representing policy"
-msgstr ""
+msgstr "Archivo JSON que representa la política"
 
 #: cinder/policy.py:33
 msgid "Rule checked when requested rule is not found"
-msgstr ""
+msgstr "Regla comprobada cuando no se encuentra la regla solicitada"
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
-msgstr ""
+msgstr "Creadas reservas %s"
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
-msgstr ""
+msgstr "Ha fallado la entrega de reservas %s|"
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
-msgstr ""
+msgstr "Fallo al revertir las reservas %s"
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -787,17 +810,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
-msgstr ""
+msgstr "Iniciando el nodo %(topic)s (versión %(version_string)s)"
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
-msgstr ""
+msgstr "Creando servicio RPC para el serivcio %s"
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -806,40 +829,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr "Se detuvo un servicio sin entrada en la base de datos"
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr "El servicio objeto de base de datos ha desaparecido, recreándolo."
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr "Recuperada la conexión al servidor de modelos."
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr "el servidor de modelos se ha ido"
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
-msgstr ""
+msgstr "serve() sólo se puede llamar una vez "
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
-#, fuzzy
 msgid "Full set of CONF:"
-msgstr "Conjunto completo de opciones (FLAGS):"
+msgstr "Conjunto completo de CONF:"
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -856,12 +878,12 @@ msgstr ""
 
 #: cinder/utils.py:213
 msgid "Specify a password or private_key"
-msgstr ""
+msgstr "Especifique una contraseña o private_key"
 
 #: cinder/utils.py:229
-#, fuzzy, python-format
+#, python-format
 msgid "Error connecting via ssh: %s"
-msgstr "Conectando a libvirt: %s"
+msgstr "Error al conectar mediante ssh: %s"
 
 #: cinder/utils.py:413
 #, python-format
@@ -876,7 +898,7 @@ msgstr "backend %s"
 #: cinder/utils.py:699
 #, python-format
 msgid "Could not remove tmpdir: %s"
-msgstr ""
+msgstr "No se ha podido eliminar directorio temporal: %s"
 
 #: cinder/utils.py:760
 #, python-format
@@ -886,43 +908,47 @@ msgstr ""
 #: cinder/utils.py:782
 #, python-format
 msgid "%s is not a string or unicode"
-msgstr ""
+msgstr "%s no es una serie o unicode"
 
 #: cinder/utils.py:786
 #, python-format
 msgid "%(name)s has a minimum character requirement of %(min_length)s."
-msgstr ""
+msgstr "%(name)s requiere de, al menos, %(min_length)s caracteres."
 
 #: cinder/utils.py:791
 #, python-format
 msgid "%(name)s has more than %(max_length)s characters."
-msgstr ""
+msgstr "%(name)s tiene más de %(max_length)s caracteres."
 
 #: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find cert_file : %s"
-msgstr "Imposible encontrar SR en VBD %s"
+msgstr "No se puede encontrar cert_file: %s"
 
 #: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find ca_file : %s"
-msgstr "Imposible encontrar SR en VBD %s"
+msgstr "No se puede encontrar ca_file: %s"
 
 #: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find key_file : %s"
-msgstr "Imposible encontrar SR en VBD %s"
+msgstr "No se puede encontrar key_file: %s"
 
 #: 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 ""
+"Al ejecutar el servidor en modalidad SSL, debe especificar un valor para "
+"las opciones cert_file y key_file en el archivo de configuración"
 
 #: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
+"No se ha podido enlazar con %(host)s:%(port)s después de intentarlo "
+"durante 30 segundos"
 
 #: cinder/wsgi.py:215
 #, python-format
@@ -931,15 +957,15 @@ msgstr ""
 
 #: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
-msgstr ""
+msgstr "Deteniendo el servidor WSGI. "
 
 #: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
-msgstr ""
+msgstr "El servidor WSGI se ha detenido."
 
 #: cinder/wsgi.py:322
 msgid "You must implement __call__"
-msgstr ""
+msgstr "Debe implementar __call__"
 
 #: cinder/api/auth.py:26
 msgid ""
@@ -955,83 +981,83 @@ msgstr ""
 
 #: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:282
 msgid "limit param must be an integer"
-msgstr ""
+msgstr "el parámetro de límite debe ser un entero"
 
 #: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:279
 msgid "limit param must be positive"
-msgstr ""
+msgstr "el parámetro de límite debe ser positivo"
 
 #: cinder/api/common.py:120
 msgid "offset param must be an integer"
-msgstr ""
+msgstr "el parámetro de desplazamiento debe ser un entero"
 
 #: cinder/api/common.py:134
 msgid "offset param must be positive"
-msgstr ""
+msgstr "el parámetro de desplazamiento debe ser positivo"
 
 #: cinder/api/common.py:162
 #, python-format
 msgid "marker [%s] not found"
-msgstr ""
+msgstr "no se ha encontrado el marcador [%s]"
 
 #: cinder/api/common.py:189
 #, python-format
 msgid "href %s does not contain version"
-msgstr ""
+msgstr "href %s no contiene la versión"
 
 #: cinder/api/extensions.py:183
 msgid "Initializing extension manager."
-msgstr ""
+msgstr "Inicializando gestor de ampliación."
 
 #: cinder/api/extensions.py:198
 #, python-format
 msgid "Loaded extension: %s"
-msgstr ""
+msgstr "Ampliación cargada: %s"
 
 #: cinder/api/extensions.py:236
 #, python-format
 msgid "Ext name: %s"
-msgstr ""
+msgstr "Nombre de ampliación: %s"
 
 #: cinder/api/extensions.py:237
 #, python-format
 msgid "Ext alias: %s"
-msgstr ""
+msgstr "Alias de ampliación: %s"
 
 #: cinder/api/extensions.py:238
 #, python-format
 msgid "Ext description: %s"
-msgstr ""
+msgstr "Descripción de ampliación: %s"
 
 #: cinder/api/extensions.py:240
 #, python-format
 msgid "Ext namespace: %s"
-msgstr ""
+msgstr "Espacio de nombres de ampliación: %s"
 
 #: cinder/api/extensions.py:241
 #, python-format
 msgid "Ext updated: %s"
-msgstr ""
+msgstr "Ampliación actualizada: %s"
 
 #: cinder/api/extensions.py:243
 #, python-format
 msgid "Exception loading extension: %s"
-msgstr ""
+msgstr "Excepción al cargar ampliación: %s"
 
 #: cinder/api/extensions.py:257
 #, python-format
 msgid "Loading extension %s"
-msgstr ""
+msgstr "Cargando ampliación %s"
 
 #: cinder/api/extensions.py:263
 #, python-format
 msgid "Calling extension factory %s"
-msgstr ""
+msgstr "Llamando a la fábrica de ampliaciones %s"
 
 #: cinder/api/extensions.py:277
 #, python-format
 msgid "osapi_volume_extension is set to deprecated path: %s"
-msgstr ""
+msgstr "osapi_volume_extension está definida en una vía de acceso en desuso: %s"
 
 #: cinder/api/extensions.py:279
 #, python-format
@@ -1039,21 +1065,23 @@ msgid ""
 "Please set your flag or cinder.conf settings for osapi_volume_extension "
 "to: %s"
 msgstr ""
+"Defina el distintivo o los valores de cinder.conf para "
+"osapi_volume_extension como: %s"
 
 #: cinder/api/extensions.py:288
 #, python-format
 msgid "Failed to load extension %(ext_factory)s: %(exc)s"
-msgstr ""
+msgstr "No se ha podido cargar la ampliación %(ext_factory)s: %(exc)s"
 
 #: cinder/api/extensions.py:357
 #, python-format
 msgid "Failed to load extension %(classpath)s: %(exc)s"
-msgstr ""
+msgstr "No se ha podido cargar la ampliación %(classpath)s: %(exc)s"
 
 #: cinder/api/extensions.py:382
 #, python-format
 msgid "Failed to load extension %(ext_name)s: %(exc)s"
-msgstr ""
+msgstr "No se ha podido cargar la ampliación %(ext_name)s: %(exc)s"
 
 #: cinder/api/sizelimit.py:25
 msgid ""
@@ -1063,66 +1091,70 @@ msgstr ""
 
 #: cinder/api/xmlutil.py:266
 msgid "element is not a child"
-msgstr ""
+msgstr "el elemento no es un hijo"
 
 #: cinder/api/xmlutil.py:463
 msgid "root element selecting a list"
-msgstr ""
+msgstr "elemento raíz que selecciona una lista"
 
 #: cinder/api/xmlutil.py:786
 #, python-format
 msgid "Template tree mismatch; adding slave %(slavetag)s to master %(mastertag)s"
 msgstr ""
+"Discrepancia de árbol de plantilla; adición de esclavo %(slavetag)s a "
+"maestro %(mastertag)s"
 
 #: cinder/api/xmlutil.py:907
 msgid "subclasses must implement construct()!"
-msgstr ""
+msgstr "las subclases deben implementar construct()!"
 
 #: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
-msgstr ""
+msgstr "Actualizando %(resource)s '%(id)s' con '%(update)r'"
 
 #: cinder/api/contrib/backups.py:161
 #, python-format
 msgid "show called for member %s"
-msgstr ""
+msgstr "Se ha llamado a show para el miembro %s"
 
 #: cinder/api/contrib/backups.py:173
-#, fuzzy, python-format
+#, python-format
 msgid "delete called for member %s"
-msgstr "Cambio de clave secreta para el usuario %s"
+msgstr "Se ha llamado a delete para el miembro %s"
 
 #: cinder/api/contrib/backups.py:176
 #, python-format
 msgid "Delete backup with id: %s"
-msgstr ""
+msgstr "Suprimir copia de seguridad con ID: %s"
 
 #: cinder/api/contrib/backups.py:218
 #, python-format
 msgid "Creating new backup %s"
-msgstr ""
+msgstr "Creando nueva copia de seguridad %s"
 
 #: cinder/api/contrib/backups.py:228 cinder/api/contrib/backups.py:260
 #: cinder/api/contrib/volume_transfer.py:157
 #: cinder/api/contrib/volume_transfer.py:193
 msgid "Incorrect request body format"
-msgstr ""
+msgstr "Formato de cuerpo de solicitud incorrecto"
 
 #: cinder/api/contrib/backups.py:234
 #, python-format
 msgid "Creating backup of volume %(volume_id)s in container %(container)s"
 msgstr ""
+"Creando copia de seguridad del volumen %(volume_id)s en el contenedor "
+"%(container)s"
 
 #: cinder/api/contrib/backups.py:257
 #, python-format
 msgid "Restoring backup %(backup_id)s (%(body)s)"
-msgstr ""
+msgstr "Restaurando copia de seguridad %(backup_id)s (%(body)s)"
 
 #: cinder/api/contrib/backups.py:267
 #, python-format
 msgid "Restoring backup %(backup_id)s to volume %(volume_id)s"
-msgstr ""
+msgstr "Restaurando copia de seguridad %(backup_id)s para el volumen %(volume_id)s"
 
 #: cinder/api/contrib/backups.py:300
 #, python-format
@@ -1155,39 +1187,39 @@ msgstr ""
 
 #: cinder/api/contrib/extended_snapshot_attributes.py:60
 msgid "Snapshot not found."
-msgstr ""
+msgstr "No se ha encontrado la instantánea."
 
 #: cinder/api/contrib/hosts.py:86 cinder/api/openstack/wsgi.py:237
 msgid "cannot understand XML"
-msgstr ""
+msgstr "no se puede entender XML"
 
 #: cinder/api/contrib/hosts.py:136
 #, python-format
 msgid "Host '%s' could not be found."
-msgstr ""
+msgstr "El host '%s' no se ha encontrado."
 
 #: cinder/api/contrib/hosts.py:165
 #, python-format
 msgid "Invalid status: '%s'"
-msgstr ""
+msgstr "Estado no válido: '%s' "
 
 #: cinder/api/contrib/hosts.py:168
 #, python-format
 msgid "Invalid update setting: '%s'"
-msgstr ""
+msgstr "Valor de actualización no válido: '%s' "
 
 #: cinder/api/contrib/hosts.py:180
 #, python-format
 msgid "Setting host %(host)s to %(state)s."
-msgstr ""
+msgstr "Estableciendo el host %(host)s en %(state)s."
 
 #: cinder/api/contrib/hosts.py:206
 msgid "Describe-resource is admin only functionality"
-msgstr ""
+msgstr "El recurso de descripción es funcionalidad sólo de administrador"
 
 #: cinder/api/contrib/hosts.py:214
 msgid "Host not found"
-msgstr ""
+msgstr "Host no encontrado"
 
 #: cinder/api/contrib/qos_specs_manage.py:110
 msgid "Please specify a name for QoS specs."
@@ -1224,7 +1256,7 @@ msgstr ""
 
 #: cinder/api/contrib/quotas.py:68
 msgid "Quota limit must be -1 or greater."
-msgstr ""
+msgstr "El límite de cuota debe ser -1 o mayor."
 
 #: cinder/api/contrib/quotas.py:105
 msgid "Missing required element quota_set in request body."
@@ -1237,7 +1269,7 @@ msgstr ""
 
 #: cinder/api/contrib/scheduler_hints.py:36
 msgid "Malformed scheduler_hints attribute"
-msgstr ""
+msgstr "Atributo scheduler_hints formado incorrectamente"
 
 #: cinder/api/contrib/services.py:91
 msgid ""
@@ -1247,7 +1279,7 @@ msgstr ""
 
 #: cinder/api/contrib/services.py:161
 msgid "Disabled reason contains invalid characters or is too long"
-msgstr ""
+msgstr "Disabled reason contiene caracteres inválidos o es demasiado larga."
 
 #: cinder/api/contrib/snapshot_actions.py:51
 msgid "'status' must be specified."
@@ -1271,19 +1303,19 @@ msgstr ""
 
 #: cinder/api/contrib/types_extra_specs.py:101
 msgid "Request body empty"
-msgstr ""
+msgstr "Cuerpo de la solicitud vacío"
 
 #: cinder/api/contrib/types_extra_specs.py:105
 #: cinder/api/v1/snapshot_metadata.py:75 cinder/api/v1/volume_metadata.py:75
 #: cinder/api/v2/snapshot_metadata.py:75 cinder/api/v2/volume_metadata.py:74
 msgid "Request body and URI mismatch"
-msgstr ""
+msgstr "Discrepancia de URI y cuerpo de solicitud"
 
 #: cinder/api/contrib/types_extra_specs.py:108
 #: cinder/api/v1/snapshot_metadata.py:79 cinder/api/v1/volume_metadata.py:79
 #: cinder/api/v2/snapshot_metadata.py:79 cinder/api/v2/volume_metadata.py:78
 msgid "Request body contains too many items"
-msgstr ""
+msgstr "El cuerpo de solicitud contiene demasiados elementos"
 
 #: cinder/api/contrib/types_extra_specs.py:152
 msgid ""
@@ -1323,6 +1355,8 @@ msgstr ""
 #: cinder/api/contrib/volume_actions.py:230
 msgid "No image_name was specified in request."
 msgstr ""
+"No se ha especificado ningún nombre de imagen (image_name) en la "
+"solicitud."
 
 #: cinder/api/contrib/volume_actions.py:238
 msgid "Bad value for 'force' parameter."
@@ -1332,26 +1366,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1377,14 +1423,14 @@ msgid "Listing volume transfers"
 msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:147
-#, fuzzy, python-format
+#, python-format
 msgid "Creating new volume transfer %s"
-msgstr "Crear volumen de %s GB"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:162
-#, fuzzy, python-format
+#, python-format
 msgid "Creating transfer of volume %s"
-msgstr "Fallo al generar metadatos para la ip %s"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:183
 #, python-format
@@ -1392,9 +1438,9 @@ msgid "Accepting volume transfer %s"
 msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:196
-#, fuzzy, python-format
+#, python-format
 msgid "Accepting transfer %s"
-msgstr "Crear volumen de %s GB"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:217
 #, python-format
@@ -1457,7 +1503,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1467,7 +1513,7 @@ msgstr ""
 
 #: cinder/api/middleware/auth.py:112
 msgid "Invalid service catalog json."
-msgstr ""
+msgstr "JSON de catálogo de servicios no válido."
 
 #: cinder/api/middleware/fault.py:44
 #, python-format
@@ -1477,7 +1523,7 @@ msgstr "Capturado error: %s"
 #: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:978
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
-msgstr ""
+msgstr "Se ha devuelto %(url)s con HTTP %(status)d"
 
 #: cinder/api/middleware/fault.py:69
 #, python-format
@@ -1487,16 +1533,16 @@ msgstr ""
 #: cinder/api/middleware/sizelimit.py:55 cinder/api/middleware/sizelimit.py:64
 #: cinder/api/middleware/sizelimit.py:78
 msgid "Request is too large."
-msgstr ""
+msgstr "La solicitud es demasiado larga."
 
 #: cinder/api/openstack/__init__.py:69
 msgid "Must specify an ExtensionManager class"
-msgstr ""
+msgstr "Debe especificar una clase ExtensionManager"
 
 #: cinder/api/openstack/__init__.py:80
 #, python-format
 msgid "Extended resource: %s"
-msgstr ""
+msgstr "Recurso ampliado: %s"
 
 #: cinder/api/openstack/__init__.py:104
 #, python-format
@@ -1504,11 +1550,13 @@ msgid ""
 "Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
 "resource"
 msgstr ""
+"Ampliación %(ext_name)s: no se puede ampliar el recurso %(collection)s: "
+"no existe dicho recurso."
 
 #: cinder/api/openstack/__init__.py:110
 #, python-format
 msgid "Extension %(ext_name)s extending resource: %(collection)s"
-msgstr ""
+msgstr "La ampliación %(ext_name)s que amplía el recurso: %(collection)s"
 
 #: cinder/api/openstack/__init__.py:126
 msgid ""
@@ -1524,43 +1572,43 @@ msgstr ""
 
 #: cinder/api/openstack/wsgi.py:212 cinder/api/openstack/wsgi.py:628
 msgid "cannot understand JSON"
-msgstr ""
+msgstr "no se puede entender JSON"
 
 #: cinder/api/openstack/wsgi.py:633
 msgid "too many body keys"
-msgstr ""
+msgstr "demasiadas claves de cuerpo"
 
 #: cinder/api/openstack/wsgi.py:671
 #, python-format
 msgid "Exception handling resource: %s"
-msgstr ""
+msgstr "Excepción al manejar recurso: %s"
 
 #: cinder/api/openstack/wsgi.py:676
 #, python-format
 msgid "Fault thrown: %s"
-msgstr ""
+msgstr "Error emitido: %s"
 
 #: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "HTTP exception thrown: %s"
-msgstr ""
+msgstr "Excepción de HTTP emitida: %s"
 
 #: cinder/api/openstack/wsgi.py:787
 msgid "Empty body provided in request"
-msgstr ""
+msgstr "Se ha proporcionado un cuerpo vacío en la solicitud"
 
 #: cinder/api/openstack/wsgi.py:793
 msgid "Unrecognized Content-Type provided in request"
-msgstr ""
+msgstr "Se ha proporcionado un tipo de contenido no reconocido en la solicitud"
 
 #: cinder/api/openstack/wsgi.py:797
 msgid "No Content-Type provided in request"
-msgstr ""
+msgstr "No se ha proporcionado ningún tipo de contenido en la solicitud"
 
 #: cinder/api/openstack/wsgi.py:908
 #, python-format
 msgid "There is no such action: %s"
-msgstr ""
+msgstr "No existe esta acción: %s"
 
 #: cinder/api/openstack/wsgi.py:911 cinder/api/openstack/wsgi.py:924
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
@@ -1572,20 +1620,20 @@ msgstr ""
 #: cinder/api/v2/volume_metadata.py:52 cinder/api/v2/volume_metadata.py:70
 #: cinder/api/v2/volume_metadata.py:95 cinder/api/v2/volume_metadata.py:120
 msgid "Malformed request body"
-msgstr ""
+msgstr "Cuerpo de solicitud formado incorrectamente"
 
 #: cinder/api/openstack/wsgi.py:921
 msgid "Unsupported Content-Type"
-msgstr ""
+msgstr "Tipo de contenido no soportado"
 
 #: cinder/api/openstack/wsgi.py:933
 msgid "Malformed request url"
-msgstr ""
+msgstr "URL de solicitud formado incorrectamente"
 
 #: cinder/api/openstack/wsgi.py:981
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
-msgstr ""
+msgstr "%(url)s ha devuelto un error: %(e)s"
 
 #: cinder/api/openstack/volume/__init__.py:25
 msgid ""
@@ -1605,18 +1653,19 @@ msgid ""
 "Only %(value)s %(verb)s request(s) can be made to %(uri)s every "
 "%(unit_string)s."
 msgstr ""
+"Solo se pueden realizar %(value)s solicitud(es) de %(verb)s para %(uri)s "
+"cada %(unit_string)s."
 
 #: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
-msgstr ""
+msgstr "Esta solicitud estaba limitada por tipo."
 
 #: cinder/api/v1/snapshot_metadata.py:37 cinder/api/v1/snapshot_metadata.py:117
 #: cinder/api/v1/snapshot_metadata.py:156 cinder/api/v2/snapshot_metadata.py:37
 #: cinder/api/v2/snapshot_metadata.py:117
 #: cinder/api/v2/snapshot_metadata.py:156
-#, fuzzy
 msgid "snapshot does not exist"
-msgstr "instancia %s: creando snapshot"
+msgstr "la instantánea no existe"
 
 #: cinder/api/v1/snapshot_metadata.py:139
 #: cinder/api/v1/snapshot_metadata.py:149 cinder/api/v1/volume_metadata.py:139
@@ -1624,12 +1673,12 @@ msgstr "instancia %s: creando snapshot"
 #: cinder/api/v2/snapshot_metadata.py:149 cinder/api/v2/volume_metadata.py:138
 #: cinder/api/v2/volume_metadata.py:148
 msgid "Metadata item was not found"
-msgstr ""
+msgstr "No se ha encontrado el elemento metadatos"
 
 #: cinder/api/v1/snapshots.py:119 cinder/api/v2/snapshots.py:120
 #, python-format
 msgid "Delete snapshot with id: %s"
-msgstr ""
+msgstr "Suprimir instantánea con el ID: %s"
 
 #: cinder/api/v1/snapshots.py:173 cinder/api/v2/snapshots.py:184
 msgid "'volume_id' must be specified"
@@ -1638,34 +1687,33 @@ msgstr ""
 #: cinder/api/v1/snapshots.py:182 cinder/api/v2/snapshots.py:193
 #, python-format
 msgid "Create snapshot from volume %s"
-msgstr ""
+msgstr "Crear instantánea desde el volumen %s"
 
 #: cinder/api/v1/snapshots.py:186 cinder/api/v2/snapshots.py:202
 #, python-format
 msgid "Invalid value '%s' for force. "
-msgstr ""
+msgstr "Valor no válido %s' para forzar."
 
 #: cinder/api/v1/volume_metadata.py:37 cinder/api/v1/volume_metadata.py:117
 #: cinder/api/v1/volume_metadata.py:156 cinder/api/v2/volume_metadata.py:36
 #: cinder/api/v2/volume_metadata.py:116 cinder/api/v2/volume_metadata.py:155
-#, fuzzy
 msgid "volume does not exist"
-msgstr "el grupo de volumenes %s no existe"
+msgstr "el volumen no existe"
 
 #: cinder/api/v1/volumes.py:114
 #, python-format
 msgid "vol=%s"
-msgstr ""
+msgstr "vol=%s"
 
 #: cinder/api/v1/volumes.py:293 cinder/api/v2/volumes.py:181
 #, python-format
 msgid "Delete volume with id: %s"
-msgstr ""
+msgstr "Suprimir volumen con el id: %s"
 
 #: cinder/api/v1/volumes.py:347 cinder/api/v1/volumes.py:351
 #: cinder/api/v2/volumes.py:251 cinder/api/v2/volumes.py:255
 msgid "Invalid imageRef provided."
-msgstr ""
+msgstr "Se ha proporcionado una referencia de imagen no válida."
 
 #: cinder/api/v1/volumes.py:391 cinder/api/v2/volumes.py:308
 #, python-format
@@ -1685,7 +1733,7 @@ msgstr "Crear volumen de %s GB"
 #: cinder/api/v1/volumes.py:504
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
-msgstr ""
+msgstr "Eliminando opciones '%(bad_options)s' de la consulta"
 
 #: cinder/api/v2/snapshots.py:111 cinder/api/v2/snapshots.py:126
 #: cinder/api/v2/snapshots.py:267
@@ -1705,53 +1753,55 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
-msgstr ""
+msgstr "Eliminando opciones '%s' de la consulta"
 
 #: cinder/backup/api.py:66
-#, fuzzy
 msgid "Backup status must be available or error"
-msgstr "El estado del volumen debe estar disponible"
+msgstr "El estado de la copia de seguridad debe ser available o error"
 
-#: cinder/backup/api.py:115
-#, fuzzy
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
-msgstr "El estado del volumen debe estar disponible"
+msgstr "El volumen del que hacer copia de seguridad debe estar disponible"
 
-#: cinder/backup/api.py:150
-#, fuzzy
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
-msgstr "El estado del volumen debe estar disponible"
+msgstr "El estado de la copia de seguridad debe ser available"
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
-msgstr ""
+msgstr "La copia de seguridad que restaurar tiene un tamaño no válido"
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
+"Creando volumen de %(size)s GB para la restauración de la copia de "
+"seguridad %(backup_id)s"
 
-#: cinder/backup/api.py:180
-#, fuzzy
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
-msgstr "El estado del volumen debe estar disponible"
+msgstr "El volumen que restaurar debe estar disponible"
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
+"el tamaño de volumen %(volume_size)d es demasiado pequeño para restaurar "
+"una copia de seguridad con un tamaño de %(size)d."
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
+"Sobrescribiendo volumen %(volume_id)s con la restauración de la copia de "
+"seguridad %(backup_id)s"
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2033,7 +2083,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2098,7 +2148,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2109,243 +2159,302 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:463
+#, python-format
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:485
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Piping cmd1='%s' into..."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
+#, python-format
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:702
 #, python-format
-msgid "Creating base image='%s'"
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
 #, python-format
 msgid "unsupported compression algorithm: %s"
-msgstr ""
+msgstr "algoritmo de compresión no soportado: %s"
 
 #: cinder/backup/drivers/swift.py:122
 #, python-format
@@ -2356,16 +2465,18 @@ msgstr ""
 #, python-format
 msgid "_create_container started, container: %(container)s,backup: %(backup_id)s"
 msgstr ""
+"_create_container se ha iniciado, contenedor: %(container)s, copia de "
+"seguridad: %(backup_id)s"
 
 #: cinder/backup/drivers/swift.py:159
 #, python-format
 msgid "_generate_swift_object_name_prefix: %s"
-msgstr ""
+msgstr "_generate_swift_object_name_prefix: %s"
 
 #: cinder/backup/drivers/swift.py:168
 #, python-format
 msgid "generated object list: %s"
-msgstr ""
+msgstr "se ha generado la lista de objetos: %s"
 
 #: cinder/backup/drivers/swift.py:179
 #, python-format
@@ -2373,6 +2484,8 @@ msgid ""
 "_write_metadata started, container name: %(container)s, metadata "
 "filename: %(filename)s"
 msgstr ""
+"_write_metadata se ha iniciado, nombre de contenedor: %(container)s, "
+"nombre de archivo de metadatos: %(filename)s"
 
 #: cinder/backup/drivers/swift.py:197
 #, python-format
@@ -2381,10 +2494,13 @@ msgid ""
 "[%(etag)s] is not the same as MD5 of metadata file sent to swift "
 "[%(md5)s]"
 msgstr ""
+"error al grabar archivo de metadatos en Swift, el MD5 del archivo de "
+"metadatos en Swift [%(etag)s] no es el mismo que el MD5 del archivo de "
+"metadatos enviado a Swift [%(md5)s]"
 
 #: cinder/backup/drivers/swift.py:202
 msgid "_write_metadata finished"
-msgstr ""
+msgstr "_write_metadata ha finalizado"
 
 #: cinder/backup/drivers/swift.py:207
 #, python-format
@@ -2392,16 +2508,18 @@ msgid ""
 "_read_metadata started, container name: %(container)s, metadata filename:"
 " %(filename)s"
 msgstr ""
+"_read_metadata se ha iniciado, nombre de contenedor: %(container)s, "
+"nombre de archivo de metadatos: %(filename)s"
 
 #: cinder/backup/drivers/swift.py:212
 #, python-format
 msgid "_read_metadata finished (%s)"
-msgstr ""
+msgstr "_read_metadata ha finalizado (%s)"
 
 #: cinder/backup/drivers/swift.py:222
-#, fuzzy, python-format
+#, python-format
 msgid "volume size %d is invalid."
-msgstr "La petición es inválida."
+msgstr "el tamaño de volumen %d no es válido."
 
 #: cinder/backup/drivers/swift.py:236
 #, python-format
@@ -2410,10 +2528,13 @@ msgid ""
 "%(volume_size_bytes)d, swift object names prefix %(object_prefix)s, "
 "availability zone: %(availability_zone)s"
 msgstr ""
+"iniciando copia de seguridad del volumen: %(volume_id)s a Swift, tamaño "
+"de volumen: %(volume_size_bytes)d, prefijo de nombres de objeto de Swift "
+"%(object_prefix)s, zona de disponibilidad: %(availability_zone)s"
 
 #: cinder/backup/drivers/swift.py:260
 msgid "reading chunk of data from volume"
-msgstr ""
+msgstr "leyendo fragmento de datos desde volumen"
 
 #: cinder/backup/drivers/swift.py:267
 #, python-format
@@ -2421,24 +2542,26 @@ msgid ""
 "compressed %(data_size_bytes)d bytes of data to %(comp_size_bytes)d bytes"
 " using %(algorithm)s"
 msgstr ""
+"%(data_size_bytes)d bytes de datos se han comprimido a "
+"%(comp_size_bytes)d bytes mediante %(algorithm)s"
 
 #: cinder/backup/drivers/swift.py:276
 msgid "not compressing data"
-msgstr ""
+msgstr "no se están comprimiendo datos"
 
 #: cinder/backup/drivers/swift.py:280
 msgid "About to put_object"
-msgstr ""
+msgstr "Acerca de de put_object"
 
 #: cinder/backup/drivers/swift.py:286
 #, python-format
 msgid "swift MD5 for %(object_name)s: %(etag)s"
-msgstr ""
+msgstr "MD5 de swift para %(object_name)s: %(etag)s"
 
 #: cinder/backup/drivers/swift.py:290
 #, python-format
 msgid "backup MD5 for %(object_name)s: %(md5)s"
-msgstr ""
+msgstr "MD5 de copia de seguridad para %(object_name)s: %(md5)s"
 
 #: cinder/backup/drivers/swift.py:293
 #, python-format
@@ -2446,15 +2569,17 @@ msgid ""
 "error writing object to swift, MD5 of object in swift %(etag)s is not the"
 " same as MD5 of object sent to swift %(md5)s"
 msgstr ""
+"error al grabar archivo en Swift, el MD5 del archivo en Swift %(etag)s no"
+" es el mismo que el MD5 del archivo enviado a Swift %(md5)s"
 
 #: cinder/backup/drivers/swift.py:301
 msgid "Calling eventlet.sleep(0)"
-msgstr ""
+msgstr "Llamando a eventlet.sleep(0)"
 
 #: cinder/backup/drivers/swift.py:319
 #, python-format
 msgid "backup %s finished."
-msgstr ""
+msgstr "copia de seguridad de %s finalizada."
 
 #: cinder/backup/drivers/swift.py:352
 #, python-format
@@ -2465,17 +2590,22 @@ msgstr ""
 #, python-format
 msgid "v1 swift volume backup restore of %s started"
 msgstr ""
+"se ha iniciado la restauración de copia de seguridad de volumen swift v1 "
+"de %s"
 
 #: cinder/backup/drivers/swift.py:367
 #, python-format
 msgid "metadata_object_names = %s"
-msgstr ""
+msgstr "metadata_object_names = %s"
 
 #: cinder/backup/drivers/swift.py:373
 msgid ""
 "restore_backup aborted, actual swift object list in swift does not match "
 "object list stored in metadata"
 msgstr ""
+"restore_backup ha terminado anormalmente, la lista de objetos de Swift "
+"real que hay en Swift no coincide con la lista de objetos almacenada en "
+"los metadatos"
 
 #: cinder/backup/drivers/swift.py:379
 #, python-format
@@ -2483,16 +2613,21 @@ msgid ""
 "restoring object from swift. backup: %(backup_id)s, container: "
 "%(container)s, swift object name: %(object_name)s, volume: %(volume_id)s"
 msgstr ""
+"restaurando objeto desde swift. copia de seguridad: %(backup_id)s, "
+"contenedor: %(container)s, nombre de objeto swift: %(object_name)s, "
+"volumen: %(volume_id)s"
 
 #: cinder/backup/drivers/swift.py:395
 #, python-format
 msgid "decompressing data using %s algorithm"
-msgstr ""
+msgstr "descomprimiendo datos mediante el algoritmo %s"
 
 #: cinder/backup/drivers/swift.py:418
 #, python-format
 msgid "v1 swift volume backup restore of %s finished"
 msgstr ""
+"la restauración de copia de seguridad de volumen swift v1 de %s ha "
+"finalizado"
 
 #: cinder/backup/drivers/swift.py:426
 #, python-format
@@ -2500,40 +2635,49 @@ msgid ""
 "starting restore of backup %(object_prefix)s from swift container: "
 "%(container)s, to volume %(volume_id)s, backup: %(backup_id)s"
 msgstr ""
+"iniciando la restauración de la copia de seguridad %(object_prefix)s "
+"desde el contenedor de swift: %(container)s, al volumen %(volume_id)s, "
+"copia de seguridad: %(backup_id)s"
 
 #: cinder/backup/drivers/swift.py:440
 #, python-format
 msgid "Restoring swift backup version %s"
-msgstr ""
+msgstr "Restaurando la versión de copia de seguridad de swift %s"
 
 #: cinder/backup/drivers/swift.py:445
 #, python-format
 msgid "No support to restore swift backup version %s"
 msgstr ""
+"La restauración de la versión de copia de seguridad de swift %s no está "
+"soportada"
 
 #: cinder/backup/drivers/swift.py:461
 #, python-format
 msgid "restore %(backup_id)s to %(volume_id)s finished."
-msgstr ""
+msgstr "la restauración de %(backup_id)s en %(volume_id)s ha finalizado."
 
 #: cinder/backup/drivers/swift.py:475
 msgid "swift error while listing objects, continuing with delete"
-msgstr ""
+msgstr "error de swift al escuchar objetos, se va a continuar con la supresión"
 
 #: cinder/backup/drivers/swift.py:484
 #, python-format
 msgid "swift error while deleting object %s, continuing with delete"
 msgstr ""
+"error de swift al suprimir el objeto %s, se va a continuar con la "
+"supresión"
 
 #: cinder/backup/drivers/swift.py:487
 #, python-format
 msgid "deleted swift object: %(swift_object_name)s in container: %(container)s"
 msgstr ""
+"objeto swift %(swift_object_name)s suprimido en el contenedor: "
+"%(container)s"
 
 #: cinder/backup/drivers/swift.py:497
 #, python-format
 msgid "delete %s finished"
-msgstr ""
+msgstr "supresión de %s finalizada"
 
 #: cinder/backup/drivers/tsm.py:78
 #, python-format
@@ -2720,19 +2864,25 @@ msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
 #: cinder/brick/exception.py:108
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
-msgstr "Fallo al generar metadatos para la ip %s"
+msgstr ""
+"Se ha encontrado un error al crear el destino iscsi para el volumen "
+"%(volume_id)s."
 
 #: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
+"Se ha encontrado un error al eliminar el destino iscsi para el volumen "
+"%(volume_id)s."
 
 #: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
+"Se ha encontrado un error en al conectar el destino iSCSI para el volumen"
+" %(volume_id)s."
 
 #: cinder/brick/exception.py:120
 #, python-format
@@ -2768,12 +2918,12 @@ msgstr ""
 
 #: cinder/brick/initiator/connector.py:609
 msgid "We are unable to locate any Fibre Channel devices"
-msgstr ""
+msgstr "No se puede localizar ningún dispositivo de canal de fibra"
 
 #: cinder/brick/initiator/connector.py:619
 #, python-format
 msgid "Looking for Fibre Channel dev %(device)s"
-msgstr ""
+msgstr "Buscando dispositivo de canal de fibra %(device)s"
 
 #: cinder/brick/initiator/connector.py:629
 msgid "Fibre Channel volume device not found."
@@ -2792,7 +2942,7 @@ msgstr ""
 #: cinder/brick/initiator/connector.py:658
 #, python-format
 msgid "Multipath device discovered %(device)s"
-msgstr ""
+msgstr "Se ha descubierto el dispositivo multivía de acceso %(device)s"
 
 #: cinder/brick/initiator/connector.py:776
 #, python-format
@@ -2831,7 +2981,7 @@ msgstr ""
 
 #: cinder/brick/initiator/linuxfc.py:50 cinder/brick/initiator/linuxfc.py:56
 msgid "systool is not installed"
-msgstr ""
+msgstr "systool no está instalado"
 
 #: cinder/brick/initiator/linuxscsi.py:99
 #: cinder/brick/initiator/linuxscsi.py:107
@@ -2864,7 +3014,7 @@ msgstr ""
 #: cinder/brick/iscsi/iscsi.py:172
 #, python-format
 msgid "Creating iscsi_target for: %s"
-msgstr ""
+msgstr "Creando iscsi_target para: %s"
 
 #: cinder/brick/iscsi/iscsi.py:179
 #, python-format
@@ -2873,10 +3023,10 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
+#, 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"
+msgstr ""
 
 #: cinder/brick/iscsi/iscsi.py:222
 #, python-format
@@ -2884,59 +3034,66 @@ msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
+"Se ha encontrado un error en la creación del destino iscsi para el ID de "
+"volumen: %(vol_id)s. Asegúrese de que el archivo de configuración tgtd "
+"contiene 'include %(volumes_dir)s/*'"
 
 #: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
-msgstr ""
+msgstr "Eliminando iscsi_target para: %s"
 
 #: cinder/brick/iscsi/iscsi.py:256
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
+#, 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"
+msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
-msgid "valid iqn needed for show_target"
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
+msgid "valid iqn needed for show_target"
+msgstr "es necesario un iqn válido para show_target"
+
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
-msgstr ""
+msgstr "Eliminando iscsi_target para el volumen: %s"
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
-msgstr ""
+msgstr "Creando iscsi_target para el volumen: %s"
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:552
+#, python-format
 msgid "Removing iscsi_target: %s"
-msgstr "Reiniciando instancia %s"
+msgstr "Eliminando iscsi_target: %s"
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
-msgstr ""
+msgstr "Se ha encontrado un error al añadir el iqn %s del iniciador al destino"
 
 #: cinder/brick/local_dev/lvm.py:75
 msgid "Error creating Volume Group"
@@ -2967,18 +3124,18 @@ msgid "StdErr  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:82
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to locate Volume Group %s"
-msgstr "Imposible encontrar volumen %s"
+msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:157
 msgid "Error querying thin pool about data_percent"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:370
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find VG: %s"
-msgstr "Imposible encontrar SR en VBD %s"
+msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:420
 msgid ""
@@ -3058,25 +3215,25 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
 #: cinder/common/sqlalchemyutils.py:66
 #: cinder/openstack/common/db/sqlalchemy/utils.py:72
 msgid "Id not in sort_keys; is sort_keys unique?"
-msgstr ""
+msgstr "Id no está en sort_keys; ¿es sort_keys exclusivo?"
 
 #: cinder/common/sqlalchemyutils.py:114
 #: cinder/openstack/common/db/sqlalchemy/utils.py:120
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
-msgstr ""
+msgstr "Dirección de clasificación desconocida, debe ser 'desc' o ' asc'"
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3088,52 +3245,51 @@ msgstr "El uso de una petición de contexto vacía está en desuso"
 #: cinder/db/sqlalchemy/api.py:192
 #, python-format
 msgid "Unrecognized read_deleted value '%s'"
-msgstr ""
+msgstr "Valor de read_deleted no reconocido '%s'"
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
-msgstr ""
+msgstr "El cambio hará el uso menos de 0 para los siguientes recursos: %s"
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
-#, fuzzy
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
-msgstr "El estado del volumen debe estar disponible"
+msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3142,19 +3298,19 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migration.py:37
 msgid "version should be an integer"
-msgstr ""
+msgstr "la versión debe ser un entero"
 
 #: cinder/db/sqlalchemy/migration.py:64
 msgid "Upgrade DB using Essex release first."
-msgstr ""
+msgstr "Actualice la base de datos utilizando primero el release de Essex."
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/001_cinder_init.py:240
 msgid "Exception while creating table."
-msgstr ""
+msgstr "Excepción al crear la tabla."
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/001_cinder_init.py:269
 msgid "Downgrade from initial Cinder install is unsupported."
-msgstr ""
+msgstr "La degradación desde la instalación inicial de Cinder no está soportada."
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:49
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:74
@@ -3166,7 +3322,7 @@ msgstr ""
 #: cinder/db/sqlalchemy/migrate_repo/versions/020_add_volume_admin_metadata_table.py:46
 #, python-format
 msgid "Table |%s| not created!"
-msgstr ""
+msgstr "La tabla |%s| no se ha creado"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:127
 msgid "Dropping foreign key reservations_ibfk_1 failed."
@@ -3174,31 +3330,31 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:133
 msgid "quota_classes table not dropped"
-msgstr ""
+msgstr "tabla quota_classes no descartada"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:140
 msgid "quota_usages table not dropped"
-msgstr ""
+msgstr "tabla quota_usages no descartada"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:147
 msgid "reservations table not dropped"
-msgstr ""
+msgstr "tabla reservations no descartada"
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
-msgstr ""
+msgstr "tabla volume_glance_metadata no descartada"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/008_add_backup.py:68
 msgid "backups table not dropped"
-msgstr ""
+msgstr "tabla backups no descartada"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/009_add_snapshot_metadata_table.py:58
 msgid "snapshot_metadata table not dropped"
-msgstr ""
+msgstr "tabla snapshot_metadata no descartada"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/010_add_transfers_table.py:61
 msgid "transfers table not dropped"
@@ -3291,12 +3447,12 @@ msgstr ""
 
 #: cinder/image/image_utils.py:94 cinder/image/image_utils.py:199
 msgid "'qemu-img info' parsing failed."
-msgstr ""
+msgstr "Se ha encontrado un error en el análisis de 'qemu-img info'."
 
 #: cinder/image/image_utils.py:101
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
-msgstr ""
+msgstr "fmt=%(fmt)s respaldado por: %(backing_file)s"
 
 #: cinder/image/image_utils.py:109 cinder/image/image_utils.py:192
 #, python-format
@@ -3326,7 +3482,7 @@ msgstr ""
 #: cinder/image/image_utils.py:206
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
-msgstr ""
+msgstr "fmt=%(fmt)s respaldado por: %(backing_file)s"
 
 #: cinder/image/image_utils.py:224
 #, python-format
@@ -3336,7 +3492,7 @@ msgstr ""
 #: cinder/image/image_utils.py:260
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
-msgstr ""
+msgstr "Se ha convertido a %(f1)s, pero ahora el formato es %(f2)s"
 
 #: cinder/keymgr/conf_key_mgr.py:78
 msgid ""
@@ -3346,140 +3502,151 @@ msgstr ""
 
 #: cinder/keymgr/conf_key_mgr.py:80
 msgid "keymgr.fixed_key not defined"
-msgstr ""
+msgstr "keymgr:fixed_key no está definido"
 
 #: cinder/keymgr/conf_key_mgr.py:134
 #, python-format
 msgid "Not deleting key %s"
-msgstr ""
+msgstr "Sin eliminar la clave %s"
 
 #: cinder/openstack/common/eventlet_backdoor.py:140
 #, python-format
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
-msgstr ""
+msgstr "Eventlet oculto escuchando en %(port)s para el proceso %(pid)d"
 
 #: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
-msgstr ""
+msgstr "Se está descartando excepción original: %s"
 
 #: cinder/openstack/common/excutils.py:91
 #, python-format
 msgid "Unexpected exception occurred %d time(s)... retrying."
-msgstr ""
+msgstr "La excepción inesperada ha ocurrido %d vez(veces)... reintentando."
 
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
-msgstr ""
+msgstr "Volviendo a cargar el archivo en memoria caché %s "
 
 #: cinder/openstack/common/gettextutils.py:271
 msgid "Message objects do not support addition."
-msgstr ""
+msgstr "Los objetos de mensaje no soportan adición."
 
 #: cinder/openstack/common/gettextutils.py:280
 msgid ""
 "Message objects do not support str() because they may contain non-ascii "
 "characters. Please use unicode() or translate() instead."
 msgstr ""
+"Los objetos de mensaje no soportan str() debido a que pueden contener "
+"caracteres no-ascii. Por favor utiliza unicode() o translate() en su "
+"lugar."
 
 #: cinder/openstack/common/imageutils.py:75
 #, python-format
 msgid "Invalid input value \"%s\"."
-msgstr ""
+msgstr "Valor de entrada inválido \"%s\"."
 
 #: cinder/openstack/common/imageutils.py:104
 msgid "Snapshot list encountered but no header found!"
 msgstr ""
+"Se ha encontrado la lista de instantáneas pero no se ha encontrado "
+"ninguna cabecera."
 
 #: cinder/openstack/common/lockutils.py:102
 #, python-format
 msgid "Could not release the acquired lock `%s`"
-msgstr ""
+msgstr "No se ha podido liberar el bloqueo adquirido `%s`"
 
 #: cinder/openstack/common/lockutils.py:189
 #, python-format
 msgid "Got semaphore \"%(lock)s\" for method \"%(method)s\"..."
-msgstr ""
+msgstr "Se ha obtenido el semáforo \"%(lock)s\" para el método \"%(method)s\"..."
 
 #: cinder/openstack/common/lockutils.py:200
 #, python-format
 msgid "Attempting to grab file lock \"%(lock)s\" for method \"%(method)s\"..."
 msgstr ""
+"Se está intentando obtener el bloqueo de archivo \"%(lock)s\" para el "
+"método \"%(method)s\"..."
 
 #: cinder/openstack/common/lockutils.py:227
 #, python-format
 msgid "Got file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
+"Se ha obtenido el bloqueo de archivo \"%(lock)s\" en %(path)s para el "
+"método \"%(method)s\"..."
 
 #: cinder/openstack/common/lockutils.py:235
 #, python-format
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
+"Bloqueo de archivo \"%(lock)s\" liberado en %(path)s para el método "
+"\"%(method)s\"..."
 
-#: cinder/openstack/common/log.py:326
-#, fuzzy, python-format
+#: cinder/openstack/common/log.py:327
+#, python-format
 msgid "Deprecated: %s"
-msgstr "recibido %s"
+msgstr "En desuso: %s"
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
-msgstr ""
+msgstr "Error al cargar la configuración de registro %(log_config)s: %(err_msg)s"
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
-msgstr ""
+msgstr "El recurso syslog debe ser uno de: %s"
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
-msgstr ""
+msgstr "Llamada muy grave a configuración en desuso: %(msg)s"
 
 #: cinder/openstack/common/loopingcall.py:82
 #, python-format
 msgid "task run outlasted interval by %s sec"
-msgstr ""
+msgstr "la ejecución de tarea ha durado %s seg. más que el intervalo"
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
-msgstr ""
+msgstr "en llamada en bucle de duración fija"
 
 #: cinder/openstack/common/loopingcall.py:129
 #, python-format
 msgid "Dynamic looping call sleeping for %.02f seconds"
-msgstr ""
+msgstr "Llamada dinámica repetitiva, en espera por %.02f segundos"
 
 #: cinder/openstack/common/loopingcall.py:136
 msgid "in dynamic looping call"
-msgstr ""
+msgstr "en llamada en bucle dinámica"
 
 #: cinder/openstack/common/periodic_task.py:43
 #, python-format
 msgid "Unexpected argument for periodic task creation: %(arg)s."
-msgstr ""
+msgstr "Argumento inesperado para la creación de tarea periódica: %(arg)s."
 
 #: cinder/openstack/common/periodic_task.py:134
 #, python-format
 msgid "Skipping periodic task %(task)s because its interval is negative"
-msgstr ""
+msgstr "Omitiendo la tarea periódica %(task)s porque el intervalo es negativo"
 
 #: cinder/openstack/common/periodic_task.py:139
 #, python-format
 msgid "Skipping periodic task %(task)s because it is disabled"
-msgstr ""
+msgstr "Omitiendo la tarea periódica %(task)s porque está inhabilitada"
 
 #: cinder/openstack/common/periodic_task.py:177
 #, python-format
 msgid "Running periodic task %(full_task_name)s"
-msgstr ""
+msgstr "Ejecutando tarea periódica %(full_task_name)s"
 
 #: cinder/openstack/common/periodic_task.py:186
 #, python-format
 msgid "Error during %(full_task_name)s: %(e)s"
-msgstr ""
+msgstr "Error durante %(full_task_name)s: %(e)s"
 
 #: cinder/openstack/common/policy.py:149
 #, python-format
@@ -3487,26 +3654,30 @@ msgid ""
 "Inheritance-based rules are deprecated; use the default brain instead of "
 "%s."
 msgstr ""
+"Las reglas basadas en herencia están en desuso; utilice default brain en "
+"lugar de %s."
 
 #: cinder/openstack/common/policy.py:163
 #, python-format
 msgid "Failed to understand rule %(match)r"
-msgstr ""
+msgstr "No se ha podido comprender la regla %(match)r"
 
 #: cinder/openstack/common/policy.py:173
 #, python-format
 msgid "Inheritance-based rules are deprecated; update _check_%s"
-msgstr ""
+msgstr "Las reglas basadas en herencia están en desuso; update _check_%s"
 
 #: cinder/openstack/common/policy.py:180
 #, python-format
 msgid "No handler for matches of kind %s"
-msgstr ""
+msgstr "No hay manejador para coincidencias de clase %s"
 
 #: cinder/openstack/common/processutils.py:127
 #, python-format
 msgid "Got unknown keyword args to utils.execute: %r"
 msgstr ""
+"Se han obtenido argumentos de palabra clave desconocidos en "
+"utils.execute: %r"
 
 #: cinder/openstack/common/processutils.py:142
 #, python-format
@@ -3523,7 +3694,7 @@ msgstr "El resultado fue %s"
 #: cinder/openstack/common/processutils.py:179
 #, python-format
 msgid "%r failed. Retrying."
-msgstr ""
+msgstr "%r ha fallado. Volviendo a intentarlo."
 
 #: cinder/openstack/common/processutils.py:218
 #, python-format
@@ -3532,11 +3703,11 @@ msgstr "corriendo cmd (SSH): %s"
 
 #: cinder/openstack/common/processutils.py:220
 msgid "Environment not supported over SSH"
-msgstr ""
+msgstr "Entorno no soportado a través de SSH"
 
 #: cinder/openstack/common/processutils.py:224
 msgid "process_input not supported over SSH"
-msgstr ""
+msgstr "entrada de proceso no soporta a través de SSH"
 
 #: cinder/openstack/common/request_utils.py:66
 #, python-format
@@ -3559,79 +3730,78 @@ msgstr ""
 #: cinder/openstack/common/service.py:269
 #, python-format
 msgid "Caught %s, exiting"
-msgstr ""
+msgstr "Se ha captado %s, saliendo"
 
 #: cinder/openstack/common/service.py:187
 msgid "Exception during rpc cleanup."
-msgstr ""
+msgstr "Excepción durante limpieza de rpc."
 
 #: cinder/openstack/common/service.py:238
 msgid "Parent process has died unexpectedly, exiting"
-msgstr ""
+msgstr "El proceso padre se ha detenido inesperadamente, saliendo"
 
 #: cinder/openstack/common/service.py:275
-#, fuzzy
 msgid "Unhandled exception"
-msgstr "Excepción interna: %s"
+msgstr "Excepción no controlada"
 
 #: cinder/openstack/common/service.py:308
 msgid "Forking too fast, sleeping"
-msgstr ""
+msgstr "Bifurcación demasiado rápida, en reposo"
 
 #: cinder/openstack/common/service.py:327
 #, python-format
 msgid "Started child %d"
-msgstr ""
+msgstr "Se ha iniciado el hijo %d"
 
 #: cinder/openstack/common/service.py:337
-#, fuzzy, python-format
+#, python-format
 msgid "Starting %d workers"
-msgstr "configurando la red del host"
+msgstr "Iniciando %d trabajadores"
 
 #: cinder/openstack/common/service.py:354
 #, python-format
 msgid "Child %(pid)d killed by signal %(sig)d"
-msgstr ""
+msgstr "Hijo %(pid)d matado por señal %(sig)d"
 
 #: cinder/openstack/common/service.py:358
 #, python-format
 msgid "Child %(pid)s exited with status %(code)d"
-msgstr ""
+msgstr "El hijo %(pid)s ha salido con el estado %(code)d"
 
 #: cinder/openstack/common/service.py:362
 #, python-format
 msgid "pid %d not in child list"
-msgstr ""
+msgstr "El pid %d no está en la lista de hijos"
 
 #: cinder/openstack/common/service.py:392
 #, python-format
 msgid "Caught %s, stopping children"
-msgstr ""
+msgstr "Se ha captado %s, deteniendo hijos"
 
 #: cinder/openstack/common/service.py:410
 #, python-format
 msgid "Waiting on %d children to exit"
-msgstr ""
+msgstr "En espera de %d hijos para salir"
 
 #: cinder/openstack/common/sslutils.py:98
 #, python-format
 msgid "Invalid SSL version : %s"
-msgstr ""
+msgstr "Versión SSL inválida : %s"
 
 #: cinder/openstack/common/strutils.py:92
 #, python-format
 msgid "Unrecognized value '%(val)s', acceptable values are: %(acceptable)s"
-msgstr ""
+msgstr "Valor '%(val)s' no reconocido, los valores aceptables son: %(acceptable)s"
 
 #: cinder/openstack/common/strutils.py:202
 #, python-format
 msgid "Invalid unit system: \"%s\""
-msgstr ""
+msgstr "Unidad del sistema no valida: \"%s\""
 
 #: cinder/openstack/common/strutils.py:211
 #, python-format
 msgid "Invalid string format: %s"
-msgstr ""
+msgstr "Formato inválido de cadena: %s"
 
 #: cinder/openstack/common/versionutils.py:69
 #, python-format
@@ -3639,6 +3809,8 @@ msgid ""
 "%(what)s is deprecated as of %(as_of)s in favor of %(in_favor_of)s and "
 "may be removed in %(remove_in)s."
 msgstr ""
+"%(what)s es obsoleto así como %(as_of)s en beneficio de %(in_favor_of)s y"
+" puede ser removido en %(remove_in)s."
 
 #: cinder/openstack/common/versionutils.py:73
 #, python-format
@@ -3646,42 +3818,44 @@ msgid ""
 "%(what)s is deprecated as of %(as_of)s and may be removed in "
 "%(remove_in)s. It will not be superseded."
 msgstr ""
+"%(what)s está obsoleto así como %(as_of)s y puede ser removido en "
+"%(remove_in)s. Y no se sustituirá."
 
 #: cinder/openstack/common/crypto/utils.py:29
 msgid "An unknown error occurred in crypto utils."
-msgstr ""
+msgstr "Ha ocurrido un error desconocido en crypto utils."
 
 #: cinder/openstack/common/crypto/utils.py:36
 #, python-format
 msgid "Block size of %(given)d is too big, max = %(maximum)d"
-msgstr ""
+msgstr "Tamaño de bloque de %(given)d es demasiado grande, máximo = %(maximum)d"
 
 #: cinder/openstack/common/crypto/utils.py:45
 #, python-format
 msgid "Length of %(given)d is too long, max = %(maximum)d"
-msgstr ""
+msgstr "Longitud de %(given)d es demasiado larga, máxima = %(maximum)d"
 
 #: cinder/openstack/common/db/exception.py:44
 msgid "Invalid Parameter: Unicode is not supported by the current database."
-msgstr ""
+msgstr "Parámetro no válido: la base de datos actual no soporta Unicode."
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:487
 msgid "DB exception wrapped."
-msgstr ""
+msgstr "Excepción de base de datos recortada."
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:538
 #, python-format
 msgid "Got mysql server has gone away: %s"
-msgstr ""
+msgstr "Se ha notificado que mysql server ha desaparecido: %s"
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:610
 #, python-format
 msgid "SQL connection failed. %s attempts left."
-msgstr ""
+msgstr "La conexión SQL ha fallado. Quedan %s intentos."
 
 #: cinder/openstack/common/db/sqlalchemy/utils.py:33
 msgid "Sort key supplied was not valid."
-msgstr ""
+msgstr "La clave de clasificación proporcionada no es válida. "
 
 #: cinder/openstack/common/scheduler/filters/capabilities_filter.py:54
 #, python-format
@@ -3700,7 +3874,7 @@ msgstr ""
 #: cinder/openstack/common/scheduler/filters/ignore_attempted_hosts_filter.py:52
 #, python-format
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
-msgstr ""
+msgstr "Host %(host)s %(pass_msg)s. Hosts probados anteriormente: %(hosts)s"
 
 #: cinder/scheduler/driver.py:69
 msgid "Must implement host_passes_filters"
@@ -3715,9 +3889,8 @@ msgid "Must implement a fallback schedule"
 msgstr "Debe de implementar un horario de reserva"
 
 #: cinder/scheduler/driver.py:82
-#, fuzzy
 msgid "Must implement schedule_create_volume"
-msgstr "Debe de implementar un horario de reserva"
+msgstr "Debe implementar schedule_create_volume"
 
 #: cinder/scheduler/filter_scheduler.py:98
 #, python-format
@@ -3738,7 +3911,7 @@ msgstr ""
 
 #: cinder/scheduler/filter_scheduler.py:156
 msgid "Invalid value for 'scheduler_max_attempts', must be >=1"
-msgstr ""
+msgstr "Valor no válido para 'scheduler_max_attempts', debe ser >= 1 "
 
 #: cinder/scheduler/filter_scheduler.py:174
 #, python-format
@@ -3746,11 +3919,15 @@ msgid ""
 "Error scheduling %(volume_id)s from last vol-service: %(last_host)s : "
 "%(exc)s"
 msgstr ""
+"Error en la planificación de %(volume_id)s desde el último servicio de "
+"volumen: %(last_host)s : %(exc)s"
 
 #: cinder/scheduler/filter_scheduler.py:207
 #, python-format
 msgid "Exceeded max scheduling attempts %(max_attempts)d for volume %(volume_id)s"
 msgstr ""
+"Se ha superado el máximo de intentos de planificación %(max_attempts)d "
+"para el volumen %(volume_id)s"
 
 #: cinder/scheduler/filter_scheduler.py:259
 #, python-format
@@ -3765,19 +3942,19 @@ msgstr ""
 #: cinder/scheduler/host_manager.py:266
 #, python-format
 msgid "Ignoring %(service_name)s service update from %(host)s"
-msgstr ""
+msgstr "Ignorando la actualización de servicio %(service_name)s de %(host)s"
 
 #: cinder/scheduler/host_manager.py:271
 #, python-format
 msgid "Received %(service_name)s service update from %(host)s."
-msgstr ""
+msgstr "Se ha recibido actualización de servicio %(service_name)s desde %(host)s."
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3806,21 +3983,25 @@ msgstr ""
 #: cinder/scheduler/manager.py:219
 #, python-format
 msgid "Failed to schedule_%(method)s: %(ex)s"
-msgstr ""
+msgstr "No se ha podido planificar %(method)s: %(ex)s"
 
 #: cinder/scheduler/scheduler_options.py:68
 #, python-format
 msgid "Could not stat scheduler options file %(filename)s: '%(e)s'"
 msgstr ""
+"No se han podido crear estadísticas de archivo de opciones de "
+"planificador %(filename)s: '%(e)s'"
 
 #: cinder/scheduler/scheduler_options.py:78
 #, python-format
 msgid "Could not decode scheduler options: '%s'"
-msgstr ""
+msgstr "No se pueden decodificar las opciones del programador: '%s'"
 
 #: cinder/scheduler/filters/capacity_filter.py:43
 msgid "Free capacity not set: volume node info collection broken."
 msgstr ""
+"La capacidad libre no se ha definido: la colección de información de nodo"
+" de volumen se ha interrumpido."
 
 #: cinder/scheduler/filters/capacity_filter.py:57
 #, python-format
@@ -3828,6 +4009,8 @@ msgid ""
 "Insufficient free space for volume creation (requested / avail): "
 "%(requested)s/%(available)s"
 msgstr ""
+"Espacio libre insuficiente para la creación de volumen "
+"(solicitado/disponible): %(requested)s/%(available)s"
 
 #: cinder/scheduler/flows/create_volume.py:53
 msgid "No volume_id provided to populate a request_spec from"
@@ -3848,7 +4031,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr "Falso ISCSI: %s"
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3860,29 +4043,31 @@ msgstr ""
 #: cinder/tests/fake_driver.py:124 cinder/tests/fake_driver.py:129
 #, python-format
 msgid "LoggingVolumeDriver: %s"
-msgstr ""
+msgstr "LoggingVolumeDriver: %s"
 
 #: cinder/tests/fake_utils.py:70
 #, python-format
 msgid "Faking execution of cmd (subprocess): %s"
-msgstr ""
+msgstr "Falsificando ejecución de mandato (subproceso): %s"
 
 #: cinder/tests/fake_utils.py:78
 #, python-format
 msgid "Faked command matched %s"
-msgstr ""
+msgstr "Mandato falso coincidía con %s"
 
 #: cinder/tests/fake_utils.py:94
 #, python-format
 msgid "Faked command raised an exception %s"
-msgstr ""
+msgstr "El mandato falso ha generado una excepción %s"
 
 #: cinder/tests/fake_utils.py:97
 #, python-format
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
+"La respuesta al mandato falso es salida estándar='%(stdout)s' error "
+"estándar='%(stderr)s'"
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3892,7 +4077,7 @@ msgstr ""
 #: cinder/tests/test_ibm_xiv_ds8k.py:102
 #, python-format
 msgid "Volume not found for instance %(instance_id)s."
-msgstr ""
+msgstr "No se ha encontrado el volumen para la instancia %(instance_id)s."
 
 #: cinder/tests/test_misc.py:58
 #, python-format
@@ -3900,6 +4085,8 @@ msgid ""
 "The following migrations are missing a downgrade:\n"
 "\t%s"
 msgstr ""
+"Falta una degradación en las migraciones siguientes:\n"
+"\t%s"
 
 #: cinder/tests/test_netapp.py:1327
 msgid "Error not a TypeError."
@@ -3914,50 +4101,55 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
 #: cinder/tests/test_storwize_svc.py:252
 #, python-format
 msgid "unrecognized argument %s"
-msgstr ""
+msgstr "argumento no reconocido %s"
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
-msgstr ""
+msgstr "Ejecutar mandato de CLI: %s"
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
 " stdout: %(stdout)s\n"
 " stderr: %(stderr)s"
 msgstr ""
+"Salida de CLI: \n"
+" stdout: %(stdout)s\n"
+" stderr: %(stderr)s"
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
 " stdout: %(out)s\n"
 " stderr: %(err)s"
 msgstr ""
+"Salida de excepción de CLI:\n"
+" stdout: %(out)s\n"
+" stderr: %(err)s"
 
 #: cinder/tests/test_volume_types.py:60
 #, python-format
 msgid "Given data: %s"
-msgstr ""
+msgstr "Datos proporcionados: %s"
 
 #: cinder/tests/test_volume_types.py:61
 #, python-format
 msgid "Result data: %s"
-msgstr ""
+msgstr "Datos de resultado: %s"
 
-#: cinder/tests/api/contrib/test_backups.py:737
-#, fuzzy
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
-msgstr "Captura no valida"
+msgstr "Entrada no válida"
 
 #: cinder/tests/brick/test_brick_remotefs.py:99
 msgid "Unexpected call to _execute."
@@ -3968,9 +4160,9 @@ msgid "mount failed."
 msgstr ""
 
 #: cinder/tests/integrated/test_login.py:29
-#, fuzzy, python-format
+#, python-format
 msgid "volume: %s"
-msgstr "Desasociar volumen %s"
+msgstr "volumen: %s"
 
 #: cinder/tests/integrated/api/client.py:34
 #, python-format
@@ -3979,47 +4171,50 @@ msgid ""
 "Status Code: %(_status)s\n"
 "Body: %(_body)s"
 msgstr ""
+"%(message)s\n"
+"Código de estado: %(_status)s\n"
+"Cuerpo: %(_body)s"
 
 #: cinder/tests/integrated/api/client.py:44
 msgid "Authentication error"
-msgstr ""
+msgstr "Error de autenticación"
 
 #: cinder/tests/integrated/api/client.py:52
 msgid "Authorization error"
-msgstr ""
+msgstr "Error de autorización"
 
 #: cinder/tests/integrated/api/client.py:60
 msgid "Item not found"
-msgstr ""
+msgstr "Elemento no encontrado"
 
 #: cinder/tests/integrated/api/client.py:97
 #, python-format
 msgid "Doing %(method)s on %(relative_url)s"
-msgstr ""
+msgstr "Realizando %(method)s en %(relative_url)s"
 
 #: cinder/tests/integrated/api/client.py:100
 #, python-format
 msgid "Body: %s"
-msgstr ""
+msgstr "Cuerpo: %s"
 
 #: cinder/tests/integrated/api/client.py:124
 #, python-format
 msgid "%(auth_uri)s => code %(http_status)s"
-msgstr ""
+msgstr "%(auth_uri)s => código %(http_status)s"
 
 #: cinder/tests/integrated/api/client.py:147
 #, python-format
 msgid "%(relative_uri)s => code %(http_status)s"
-msgstr ""
+msgstr "%(relative_uri)s => código %(http_status)s"
 
 #: cinder/tests/integrated/api/client.py:158
 msgid "Unexpected status code"
-msgstr ""
+msgstr "Código de estado inesperado"
 
 #: cinder/tests/integrated/api/client.py:165
 #, python-format
 msgid "Decoding JSON: %s"
-msgstr ""
+msgstr "Decodificando JSON: %s"
 
 #: cinder/tests/zonemanager/test_brcd_fc_zone_driver.py:124
 #, python-format
@@ -4057,12 +4252,12 @@ msgstr ""
 
 #: cinder/transfer/api.py:102 cinder/volume/api.py:350
 msgid "status must be available"
-msgstr ""
+msgstr "el estado debe ser available"
 
 #: cinder/transfer/api.py:119
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to create transfer record for %s"
-msgstr "Fallo al generar metadatos para la ip %s"
+msgstr ""
 
 #: cinder/transfer/api.py:136
 #, python-format
@@ -4075,6 +4270,8 @@ msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG volume "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
+"Se ha superado la cuota para %(s_pid)s, se ha intentado crear un volumen "
+"de %(s_size)sG (ya se han consumido %(d_consumed)dG de %(d_quota)dG)"
 
 #: cinder/transfer/api.py:182
 #, python-format
@@ -4110,6 +4307,8 @@ msgstr ""
 #: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
+"Se ha encontrado un error en la actualización de la cuota para suprimir "
+"volumen"
 
 #: cinder/volume/api.py:228
 #, python-format
@@ -4123,26 +4322,25 @@ msgstr ""
 #: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
-msgstr ""
+msgstr "El volumen todavía tiene %d instantáneas dependientes"
 
 #: cinder/volume/api.py:293 cinder/volume/api.py:333
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
-msgstr ""
+msgstr "Buscando por: %s"
 
 #: cinder/volume/api.py:353
 msgid "already attached"
-msgstr ""
+msgstr "ya está conectado"
 
 #: cinder/volume/api.py:360
 msgid "status must be in-use to detach"
 msgstr ""
 
 #: cinder/volume/api.py:371
-#, fuzzy
 msgid "Volume status must be available to reserve"
-msgstr "El estado del volumen debe estar disponible"
+msgstr "El estado del volumen debe ser disponible para reserva"
 
 #: cinder/volume/api.py:447
 msgid "Snapshot cannot be created while volume is migrating"
@@ -4150,7 +4348,7 @@ msgstr ""
 
 #: cinder/volume/api.py:451
 msgid "must be available"
-msgstr ""
+msgstr "debe estar disponible"
 
 #: cinder/volume/api.py:473
 #, python-format
@@ -4158,6 +4356,9 @@ msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
+"Se ha superado la cuota para %(s_pid)s, se ha intentado crear una "
+"instantánea de %(s_size)sG (ya se han consumido %(d_consumed)dG de "
+"%(d_quota)dG)"
 
 #: cinder/volume/api.py:485
 #, python-format
@@ -4165,32 +4366,32 @@ msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
+"Se ha superado la cuota para %(s_pid)s, se ha intentado crear una "
+"instantánea (%(d_consumed)d instantáneas ya consumidas)"
 
 #: cinder/volume/api.py:536
-#, fuzzy
 msgid "Volume Snapshot status must be available or error"
-msgstr "El estado del volumen debe estar disponible"
+msgstr "El estado de instantánea de volumen debe ser disponible o error"
 
 #: cinder/volume/api.py:564 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
-msgstr ""
+msgstr "Clave de propiedad de metadatos en blanco"
 
 #: cinder/volume/api.py:568
 msgid "Metadata property key greater than 255 characters"
-msgstr ""
+msgstr "Clave de propiedad metadatos de más de 255 caracteres "
 
 #: cinder/volume/api.py:572
 msgid "Metadata property value greater than 255 characters"
-msgstr ""
+msgstr "Valor de propiedad de metadatos de más de 255 caracteres "
 
 #: cinder/volume/api.py:703 cinder/volume/api.py:777
-#, fuzzy
 msgid "Volume status must be available/in-use."
-msgstr "El estado del volumen debe estar disponible"
+msgstr "El estado del volumen debe ser available/in-use."
 
 #: cinder/volume/api.py:706
 msgid "Volume status is in-use."
-msgstr ""
+msgstr "El estado del volumen es en uso."
 
 #: cinder/volume/api.py:735
 msgid "Volume status must be available to extend."
@@ -4218,66 +4419,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4304,27 +4505,27 @@ msgstr ""
 #: cinder/volume/driver.py:335
 #, python-format
 msgid "copy_image_to_volume %s."
-msgstr ""
+msgstr "copy_image_to_volume %s."
 
 #: cinder/volume/driver.py:352
 #, python-format
 msgid "copy_volume_to_image %s."
-msgstr ""
+msgstr "copy_volume_to_image %s."
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4339,18 +4540,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr "volumen %s: eliminando exportación"
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4373,9 +4574,11 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
+"No se ha almacenado provider_location de ISCSI, utilizando el "
+"descubrimiento"
 
 #: cinder/volume/driver.py:652
 #, python-format
@@ -4388,27 +4591,27 @@ msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
 #: cinder/volume/driver.py:701
-#, fuzzy, python-format
+#, python-format
 msgid "Could not find iSCSI export for volume %s"
-msgstr "Imposible encontrar SR en VBD %s"
+msgstr "No se ha podido encontrar la exportación iSCSI para el volumen %s"
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
-msgstr ""
+msgstr "Descubrimiento ISCSI: se ha encontrado %s"
 
 #: cinder/volume/driver.py:802
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4416,8 +4619,15 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
+msgstr "El controlador debe implementar initialize_connection"
+
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
 msgstr ""
 
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
@@ -4425,6 +4635,8 @@ msgstr ""
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
+"Omitiendo remove_export. No se ha proporcionado ningún iscsi_target para "
+"el volumen: %s"
 
 #: cinder/volume/iscsi.py:80
 #, python-format
@@ -4432,21 +4644,23 @@ msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
+"Saltando remove_export. Actualmente no hay ningún iscsi_target exportado "
+"para el volumen: %s"
 
 #: cinder/volume/iscsi.py:100
 msgid "Detected inconsistency in provider_location id"
-msgstr ""
+msgstr "Se ha detectado una incoherencia en el ID de provider_location"
 
 #: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:572
 #: cinder/volume/drivers/huawei/rest_common.py:1225
 #, python-format
 msgid "%s"
-msgstr ""
+msgstr "%s"
 
 #: cinder/volume/iscsi.py:184
 #, python-format
 msgid "Symbolic link %s not found"
-msgstr ""
+msgstr "El enlace simbólico %s no se ha encontrado"
 
 #: cinder/volume/iscsi.py:251
 #, python-format
@@ -4457,287 +4671,290 @@ msgstr ""
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
+"Saltando ensure_export. No se ha proporcionado ningún iscsi_target para "
+"el volumen: %s"
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
+"La vía de acceso del controlador %s está en desuso, actualice la "
+"configuración a la nueva vía de acceso."
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr "Exportando de nuevo los volumenes %s"
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr "volume %s: saltando exportación"
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
-msgstr ""
+msgstr "Reanudando cualquier operación de supresión en curso"
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
-msgstr ""
+msgstr "Reanudando la supresión en el volumen: %s"
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr "volumen %s: eliminando"
 
-#: cinder/volume/manager.py:390
-#, fuzzy
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
-msgstr "Volumen no local a este nodo"
+msgstr "el volumen no es local para este nodo"
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
+"Se ha encontrado un error en la actualización de las supresiones de "
+"volumen"
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr "volumen %s: eliminado satisfactoriamente"
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
-msgstr ""
+msgstr "instantánea %s: creando"
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
-msgstr ""
+msgstr "instantánea %s: creada satisfactoriamente"
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
-msgstr ""
+msgstr "instantánea %s: suprimiendo"
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
+"Se ha encontrado un error en la actualización de las supresiones de "
+"instantánea"
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
-msgstr ""
+msgstr "instantánea %s: suprimida satisfactoriamente"
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
-msgstr ""
+msgstr "otra instancia lo está conectando"
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
+"El volumen %(volume_id)s se ha cargado en la imagen (%(image_id)s) "
+"correctamente"
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
-msgstr ""
+msgstr "Actualizando estado del volumen"
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
-msgstr ""
+msgstr "Se ha recibido la notificación {%s} "
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4753,13 +4970,13 @@ msgstr ""
 #: cinder/volume/volume_types.py:43
 #, python-format
 msgid "DB error: %s"
-msgstr ""
+msgstr "Error de base de datos: %s"
 
 #: cinder/volume/qos_specs.py:123 cinder/volume/qos_specs.py:140
 #: cinder/volume/qos_specs.py:272 cinder/volume/volume_types.py:52
 #: cinder/volume/volume_types.py:99
 msgid "id cannot be None"
-msgstr ""
+msgstr "el ID no puede ser None"
 
 #: cinder/volume/qos_specs.py:156
 #, python-format
@@ -4790,19 +5007,19 @@ msgstr ""
 
 #: cinder/volume/qos_specs.py:284 cinder/volume/volume_types.py:111
 msgid "name cannot be None"
-msgstr ""
+msgstr "el nombre no puede ser None"
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
-msgstr ""
+msgstr "Realizando supresión segura en el volumen: %s"
 
 #: cinder/volume/volume_types.py:130
 #, python-format
@@ -4810,12 +5027,14 @@ msgid ""
 "Default volume type is not found, please check default_volume_type "
 "config: %s"
 msgstr ""
+"El tipo de volumen predeterminado no se ha encontrado, compruebe la "
+"configuración default_volume_type: %s"
 
 #: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:284
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
-#, fuzzy, python-format
+#, python-format
 msgid "Creating clone of volume: %s"
-msgstr "Crear volumen de %s GB"
+msgstr "Creando clon del volumen: %s"
 
 #: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
@@ -4925,11 +5144,11 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
-#, fuzzy, python-format
+#, python-format
 msgid "Error running SSH command: %s"
-msgstr "Error inesperado mientras el comando se ejecutaba"
+msgstr "Error al ejecutar el mandato SSH: %s"
 
 #: cinder/volume/drivers/eqlx.py:282
 #, python-format
@@ -5005,219 +5224,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
-msgstr ""
+msgstr "No hay ningún archivo de configuración de Gluster configurado (%s)"
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
-msgstr ""
+msgstr "El archivo de configuración de Gluster en %(config)s no existe"
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
-msgstr ""
+msgstr "mount.glusterfs no está instalado"
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
-msgstr ""
+msgstr "difundido a %s"
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
-msgstr ""
+msgstr "El volumen %s no tiene especificado provider_location, se va a saltar"
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
-msgstr ""
+msgstr "Excepción durante el montaje de %s"
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5240,6 +5459,8 @@ msgstr ""
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
+"la instantánea %s no se ha encontrado, se van a saltar las operaciones de"
+" supresión"
 
 #: cinder/volume/drivers/lvm.py:347
 #, python-format
@@ -5282,19 +5503,19 @@ msgid " but size is now %d"
 msgstr ""
 
 #: cinder/volume/drivers/nfs.py:380
-#, fuzzy, python-format
+#, python-format
 msgid "%s is already mounted"
-msgstr "el grupo %s ya existe"
+msgstr "%s ya está montado "
 
 #: cinder/volume/drivers/nfs.py:432
 #, python-format
 msgid "There's no NFS config file configured (%s)"
-msgstr ""
+msgstr "No hay ningún archivo de configuración de NFS configurado (%s)"
 
 #: cinder/volume/drivers/nfs.py:437
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
-msgstr ""
+msgstr "El archivo de configuración de NFS en %(config)s no existe"
 
 #: cinder/volume/drivers/nfs.py:442
 #, python-format
@@ -5326,176 +5547,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:212
+#, python-format
 msgid "error opening rbd image %s"
-msgstr "Desasociar volumen %s"
+msgstr "Error al abrir imagen rbd %s"
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
-#, fuzzy
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
-msgstr "Conectando a libvirt: %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
-msgstr ""
+msgstr "error al renovar las estadísticas del volumen"
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:703
+#, python-format
 msgid "connection data: %s"
-msgstr "Conectando a libvirt: %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
-msgstr ""
+msgstr "No está almacenado en rbd"
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
-msgstr ""
+msgstr "Componentes en blanco"
 
-#: cinder/volume/drivers/rbd.py:718
-#, fuzzy
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
-msgstr "Captura no valida"
+msgstr "No es una instantánea rbd"
 
-#: cinder/volume/drivers/rbd.py:730
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:731
+#, python-format
 msgid "not cloneable: %s"
-msgstr "respuesta %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
-msgstr ""
+msgstr "%s está en un clúster de ceph distinto"
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:754
+#, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
-msgstr "Imposible encontrar volumen %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5503,39 +5722,39 @@ msgstr ""
 
 #: cinder/volume/drivers/scality.py:67
 msgid "Value required for 'scality_sofs_config'"
-msgstr ""
+msgstr "Valor necesario para 'scality_sofs_config'"
 
 #: cinder/volume/drivers/scality.py:78
 #, python-format
 msgid "Cannot access 'scality_sofs_config': %s"
-msgstr ""
+msgstr "No se puede acceder a 'scality_sofs_config': %s"
 
 #: cinder/volume/drivers/scality.py:84
 msgid "Cannot execute /sbin/mount.sofs"
-msgstr ""
+msgstr "No se puede ejecutar /sbin/mount.sofs"
 
 #: cinder/volume/drivers/scality.py:105
 msgid "Cannot mount Scality SOFS, check syslog for errors"
-msgstr ""
+msgstr "No se puede montar Scality SOFS, compruebe syslog por si hay errores"
 
 #: cinder/volume/drivers/scality.py:139
 #, python-format
 msgid "Cannot find volume dir for Scality SOFS at '%s'"
-msgstr ""
+msgstr "No se puede encontrar el directorio del volumen para Scality SOFS en '%s'"
 
 #: cinder/volume/drivers/sheepdog.py:59
 #, python-format
 msgid "Sheepdog is not working: %s"
-msgstr ""
+msgstr "Sheepdog no funciona: %s"
 
 #: cinder/volume/drivers/sheepdog.py:64
 msgid "Sheepdog is not working"
-msgstr ""
+msgstr "Sheepdog no funciona"
 
 #: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
-msgstr ""
+msgstr "Carga útil para llamada de API SolidFire: %s"
 
 #: cinder/volume/drivers/solidfire.py:149
 #, python-format
@@ -5564,54 +5783,57 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
-msgstr ""
+msgstr "La llamada a json.loads() ha generado una excepción: %s"
 
 #: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
-msgstr ""
+msgstr "Resultados de llamada de API SolidFire: %s"
 
 #: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
-msgstr ""
+msgstr "Se ha encontrado una operación de clonación: %s"
 
 #: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
-msgstr ""
+msgstr "Esperando a la operación restante antes de reintentar la instantánea: %s"
 
 #: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
-msgstr ""
+msgstr "Se ha detectado xDBVersionMismatch, reintento %s de 5"
 
 #: cinder/volume/drivers/solidfire.py:200
 #: cinder/volume/drivers/solidfire.py:269
 #: cinder/volume/drivers/solidfire.py:364
-#, fuzzy, python-format
+#, python-format
 msgid "API response: %s"
-msgstr "respuesta %s"
+msgstr "Respuesta de la API: %s"
 
 #: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
-msgstr ""
+msgstr "Se ha encontrado una cuenta solidfire: %s"
 
 #: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
-msgstr ""
+msgstr "Cuenta solidfire: %s no existe, créela..."
 
 #: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
+"Se ha encontrado un error en la recuperación del volumen SolidFire-ID: %s"
+" en get_by_account!"
 
 #: cinder/volume/drivers/solidfire.py:396
-#, fuzzy
 msgid "Failed to get model update from clone"
-msgstr "Fallo al generar metadatos para la ip %s"
+msgstr ""
+"Se ha encontrado un error en la obtención de la actualización del modelo "
+"desde el clon"
 
 #: cinder/volume/drivers/solidfire.py:408
 #, python-format
@@ -5621,7 +5843,7 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
-msgstr ""
+msgstr "Se ha detectado más de un valor preestablecido válido, se va a utilizar %s"
 
 #: cinder/volume/drivers/solidfire.py:458
 #, python-format
@@ -5632,25 +5854,29 @@ msgstr ""
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
+"El ID de volumen SolidFire %(sfid)s se ha correlacionado con el ID de "
+"Cinder %(uuid)s."
 
 #: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
-msgstr ""
+msgstr "El volumen %s no se ha encontrado en el clúster de SF."
 
 #: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
-msgstr ""
+msgstr "Se han encontrado %(count)s correlacionados con el ID: %(uuid)s."
 
 #: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
-msgstr ""
+msgstr "Entre SolidFire delete_volume..."
 
 #: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
+"La cuenta para el ID de volumen %s no se ha encontrado en el clúster de "
+"SolidFire."
 
 #: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
@@ -5663,23 +5889,23 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
-msgstr ""
+msgstr "El ID de volumen %s no se ha encontrado en el clúster de SolidFire."
 
 #: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
-msgstr ""
+msgstr "Saliendo de SolidFire delete_volume"
 
 #: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
-msgstr ""
+msgstr "Ejecutando SolidFire ensure_export..."
 
 #: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
-msgstr ""
+msgstr "Ejecutando SolidFire create_export..."
 
 #: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
@@ -5691,31 +5917,30 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
-msgstr ""
+msgstr "Actualizando la información de estado del clúster"
 
 #: cinder/volume/drivers/solidfire.py:671
-#, fuzzy
 msgid "Failed to get updated stats"
-msgstr "Fallo al suspender la instancia"
+msgstr "Se ha encontrado un error en la obtención de estadísticas actualizadas"
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
 #: cinder/volume/drivers/zadara.py:236
 #, python-format
 msgid "Sending %(method)s to %(url)s. Body \"%(body)s\""
-msgstr ""
+msgstr "Enviando %(method)s a %(url)s. Cuerpo \"%(body)s\""
 
 #: cinder/volume/drivers/zadara.py:260
 #, python-format
 msgid "Operation completed. %(data)s"
-msgstr ""
+msgstr "Operación completada. %(data)s"
 
 #: cinder/volume/drivers/zadara.py:357
 #, python-format
@@ -5726,6 +5951,8 @@ msgstr ""
 #, python-format
 msgid "Volume %(name)s could not be found. It might be already deleted"
 msgstr ""
+"El volumen %(name)s no se ha podido encontrar. Puede que ya se haya "
+"suprimido"
 
 #: cinder/volume/drivers/zadara.py:438
 #, python-format
@@ -5766,7 +5993,7 @@ msgstr ""
 #: cinder/volume/drivers/zadara.py:614
 #, python-format
 msgid "Attach properties: %(properties)s"
-msgstr ""
+msgstr "Adjuntar propiedades: %(properties)s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:125
 #, python-format
@@ -5774,22 +6001,22 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
-msgstr ""
+msgstr "No se ha podido encontrar la exportación iSCSI para el volumen %s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
-#, fuzzy, python-format
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
+#, python-format
 msgid "Cannot find device number for volume %s"
-msgstr "Imposible encontrar SR en VBD %s"
+msgstr "No se puede encontrar el número de dispositivo para el volumen %s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
-#, fuzzy, python-format
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
+#, python-format
 msgid "Found iSCSI endpoint: %s"
-msgstr "No encontrado: %s"
+msgstr "Punto final de iSCSI encontrado: %s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:209
 #, python-format
@@ -5806,21 +6033,23 @@ msgid ""
 "Module PyWBEM not installed.  Install PyWBEM using the python-pywbem "
 "package."
 msgstr ""
+"El módulo PyWBEM no está instalado. Instale PyWBEM mediante el paquete "
+"python-pywbem."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:82
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:125
 msgid "Entering create_volume."
-msgstr ""
+msgstr "Entrando en create_volume."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:86
-#, fuzzy, python-format
+#, python-format
 msgid "Create Volume: %(volume)s  Size: %(size)lu"
-msgstr "volume %(vol_name)s: creando lv del tamaño %(vol_size)sG"
+msgstr "Crear volumen: %(volume)s  Tamaño; %(size)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:94
 #, python-format
 msgid "Create Volume: %(volume)s  Storage type: %(storage_type)s"
-msgstr ""
+msgstr "Crear volumen: %(volume)s  Tipo de almacenamiento: %(storage_type)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:101
 #, python-format
@@ -5828,6 +6057,8 @@ msgid ""
 "Create Volume: %(volume)s  Pool: %(pool)s  Storage System: "
 "%(storage_system)s"
 msgstr ""
+"Crear volumen: %(volume)s  Agrupación: %(pool)s  Tipo de almacenamiento: "
+"%(storage_system)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:110
 #, python-format
@@ -5835,6 +6066,8 @@ msgid ""
 "Error Create Volume: %(volumename)s. Storage Configuration Service not "
 "found for pool %(storage_type)s."
 msgstr ""
+"Error al crear volumen: %(volumename)s. No se ha encontrado el servicio "
+"de configuración de almacenamiento para la agrupación %(storage_type)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:120
 #, python-format
@@ -5847,7 +6080,7 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_smis_common.py:136
 #, python-format
 msgid "Create Volume: %(volumename)s  Return code: %(rc)lu"
-msgstr ""
+msgstr "Crear volumen: %(volumename)s  Código de retorno: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:143
 #, python-format
@@ -5855,6 +6088,8 @@ msgid ""
 "Error Create Volume: %(volumename)s.  Return code: %(rc)lu.  Error: "
 "%(error)s"
 msgstr ""
+"Error al crear volumen: %(volumename)s.  Código de retorno: %(rc)lu.  "
+"Error: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:164
 #, python-format
@@ -5866,7 +6101,7 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_smis_common.py:176
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:348
 msgid "Entering create_volume_from_snapshot."
-msgstr ""
+msgstr "Entrando en create_volume_from_snapshot."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:181
 #, python-format
@@ -5874,6 +6109,8 @@ msgid ""
 "Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s"
 msgstr ""
+"Crear volumen desde instantánea: Volumen: %(volumename)s  Instantánea: "
+"%(snapshotname)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:191
 #, python-format
@@ -5882,6 +6119,9 @@ msgid ""
 "%(snapshotname)s  Snapshot Instance: %(snapshotinstance)s  Storage "
 "System: %(storage_system)s."
 msgstr ""
+"Crear volumen desde instantánea: Volumen: %(volumename)s  Instantánea: "
+"%(snapshotname)s Instancia de instantánea: %(snapshotinstance)s  Sistema "
+"de almacenamiento: %(storage_system)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:201
 #, python-format
@@ -5889,6 +6129,9 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s. Create Volume from Snapshot is NOT supported on VMAX."
 msgstr ""
+"Error al crear volumen desde instantánea: Volumen: %(volumename)s  "
+"Instantánea: %(snapshotname)s. Crear volumen desde instantánea NO está "
+"soportado en VMAX."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:212
 #, python-format
@@ -5897,6 +6140,9 @@ msgid ""
 "%(snapshotname)s. Cannot find Replication Service to create volume from "
 "snapshot."
 msgstr ""
+"Error al crear volumen desde instantánea: Volumen: %(volumename)s  "
+"Instantánea: %(snapshotname)s. No se puede encontrar el servicio de "
+"réplica para crear volumen desde instantánea."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:221
 #, python-format
@@ -5906,6 +6152,10 @@ msgid ""
 "%(service)s  ElementName: %(elementname)s  SyncType: 8  SourceElement: "
 "%(sourceelement)s"
 msgstr ""
+"Crear volumen desde instantánea: Volumen: %(volumename)s  Instantánea: "
+"%(snapshotname)s  Método: CreateElementReplica  Servicio de réplica: "
+"%(service)s  Nombre de elemento: %(elementname)s  Tipo de sincronización:"
+" 8  Elemento origen: %(sourceelement)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:242
 #, python-format
@@ -5913,6 +6163,9 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  "
 "Snapshot:%(snapshotname)s.  Return code: %(rc)lu.Error: %(error)s"
 msgstr ""
+"Error al crear volumen desde instantánea: Volumen: %(volumename)s  "
+"Instantánea: %(snapshotname)s.  Código de retorno: %(rc)lu. Error: "
+"%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:268
 #, python-format
@@ -5921,6 +6174,9 @@ msgid ""
 "%(snapshotname)s.  Successfully clone volume from snapshot.  Finding the "
 "clone relationship."
 msgstr ""
+"Crear volumen desde instantánea: Volumen: %(volumename)s  Instantánea: "
+"%(snapshotname)s. El volumen se ha clonado correctamente desde la "
+"instantánea.  Se va a buscar la relación de clon."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:280
 #, python-format
@@ -5930,6 +6186,10 @@ msgid ""
 "ModifyReplicaSynchronization ReplicationService: %(service)s  Operation: "
 "8  Synchronization: %(sync_name)s"
 msgstr ""
+"Crear volumen desde instantánea: Volumen: %(volumename)s  Instantánea: "
+"%(snapshotname)s.  Elimine la relación de clon. Método: "
+"ModifyReplicaSynchronization Servicio de réplica: %(service)s  Operación:"
+" 8  Sincronización: %(sync_name)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:296
 #, python-format
@@ -5937,6 +6197,8 @@ msgid ""
 "Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu"
 msgstr ""
+"Crear volumen desde instantánea: Volumen: %(volumename)s  Instantánea: "
+"%(snapshotname)s Código de retorno: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:305
 #, python-format
@@ -5944,6 +6206,9 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s.  Return code: %(rc)lu.  Error: %(error)s"
 msgstr ""
+"Error al crear volumen desde instantánea: Volumen: %(volumename)s  "
+"Instantánea: %(snapshotname)s.  Código de retorno: %(rc)lu. Error: "
+"%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:317
 #, python-format
@@ -5951,10 +6216,12 @@ msgid ""
 "Leaving create_volume_from_snapshot: Volume: %(volumename)s Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu."
 msgstr ""
+"Saliendo de create_volume_from_snapshot: Volumen: %(volumename)s "
+"Instantánea: %(snapshotname)s  Código de retorno: %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:328
 msgid "Entering create_cloned_volume."
-msgstr ""
+msgstr "Entrando en create_cloned_volume."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:333
 #, python-format
@@ -5962,6 +6229,8 @@ msgid ""
 "Create a Clone from Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s"
 msgstr ""
+"Crear un clon desde un volumen: Volumen: %(volumename)s  Volumen de "
+"origen: %(srcname)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:343
 #, python-format
@@ -5969,6 +6238,9 @@ msgid ""
 "Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
 "  Source Instance: %(src_instance)s  Storage System: %(storage_system)s."
 msgstr ""
+"Crear volumen clonado: Volumen: %(volumename)s  Volumen de origen: "
+"%(srcname)s  Instancia de origen: %(src_instance)s  Sistema de "
+"almacenamiento: %(storage_system)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:353
 #, python-format
@@ -5976,6 +6248,9 @@ msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s. Cannot find Replication Service to create cloned volume."
 msgstr ""
+"Error al crear volumen clonado: Volumen: %(volumename)s  Volumen de "
+"origen: %(srcname)s. No se puede encontrar el el servicio de réplica para"
+" crear el volumen clonado."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:362
 #, python-format
@@ -5985,6 +6260,10 @@ msgid ""
 "ElementName: %(elementname)s  SyncType: 8  SourceElement: "
 "%(sourceelement)s"
 msgstr ""
+"Crear volumen clonado: Volumen: %(volumename)s  Volumen de origen: "
+"%(srcname)s  Método: CreateElementReplica  Servicio de réplica: "
+"%(service)s  Nombre de elemento: %(elementname)s  Tipo de sincronización:"
+" 8  Elemento origen: %(sourceelement)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:383
 #, python-format
@@ -5992,6 +6271,8 @@ msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source "
 "Volume:%(srcname)s.  Return code: %(rc)lu.Error: %(error)s"
 msgstr ""
+"Error al crear volumen clonado: Volumen: %(volumename)s  Volumen de "
+"origen: %(srcname)s.  Código de retorno: %(rc)lu. Error: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:409
 #, python-format
@@ -6000,6 +6281,9 @@ msgid ""
 "  Successfully cloned volume from source volume.  Finding the clone "
 "relationship."
 msgstr ""
+"Crear volumen clonado: Volumen: %(volumename)s  Volumen de origen: "
+"%(srcname)s.  El volumen se ha clonado correctamente desde el volumen de "
+"origen. Buscando la relación de clon."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:421
 #, python-format
@@ -6009,6 +6293,10 @@ msgid ""
 "ReplicationService: %(service)s  Operation: 8  Synchronization: "
 "%(sync_name)s"
 msgstr ""
+"Crear volumen clonado: Volumen: %(volumename)s  Volumen de origen: "
+"%(srcname)s.  Elimine la relación de clon. Método: "
+"ModifyReplicaSynchronization Servicio de réplica: %(service)s  Operación:"
+" 8  Sincronización: %(sync_name)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:437
 #, python-format
@@ -6016,6 +6304,8 @@ msgid ""
 "Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
 "  Return code: %(rc)lu"
 msgstr ""
+"Crear volumen clonado: Volumen: %(volumename)s  Volumen de origen: "
+"%(srcname)s  Código de retorno: %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:446
 #, python-format
@@ -6023,6 +6313,8 @@ msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s.  Return code: %(rc)lu.  Error: %(error)s"
 msgstr ""
+"Error al crear volumen clonado: Volumen: %(volumename)s  Volumen de "
+"origen: %(srcname)s.  Código de retorno: %(rc)lu. Error: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:458
 #, python-format
@@ -6030,21 +6322,25 @@ msgid ""
 "Leaving create_cloned_volume: Volume: %(volumename)s Source Volume: "
 "%(srcname)s  Return code: %(rc)lu."
 msgstr ""
+"Saliendo de create_cloned_volume: Volumen: %(volumename)s Volumen de "
+"origen: %(srcname)s  Código de retorno: %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:469
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:178
 msgid "Entering delete_volume."
-msgstr ""
+msgstr "Entrando en delete_volume."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:471
 #, python-format
 msgid "Delete Volume: %(volume)s"
-msgstr ""
+msgstr "Suprimir volumen: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:478
 #, python-format
 msgid "Volume %(name)s not found on the array. No volume to delete."
 msgstr ""
+"El volumen %(name)s no se ha encontrado en la matriz. No hay ningún "
+"volumen que suprimir."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:488
 #, python-format
@@ -6052,11 +6348,13 @@ msgid ""
 "Error Delete Volume: %(volumename)s. Storage Configuration Service not "
 "found."
 msgstr ""
+"Error al suprimir volumen: %(volumename)s. No se ha encontrado el "
+"servicio de configuración de almacenamiento."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:496
 #, python-format
 msgid "Delete Volume: %(name)s  DeviceID: %(deviceid)s"
-msgstr ""
+msgstr "Suprimir volumen: %(name)s  ID de dispositivo: %(deviceid)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:500
 #, python-format
@@ -6064,6 +6362,8 @@ msgid ""
 "Delete Volume: %(name)s  Method: EMCReturnToStoragePool ConfigServic: "
 "%(service)s  TheElement: %(vol_instance)s"
 msgstr ""
+"Suprimir volumen: %(name)s  Método: EMCReturnToStoragePool Servicio de "
+"configuración: %(service)s  Elemento: %(vol_instance)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:514
 #, python-format
@@ -6071,28 +6371,32 @@ msgid ""
 "Error Delete Volume: %(volumename)s.  Return code: %(rc)lu.  Error: "
 "%(error)s"
 msgstr ""
+"Error al suprimir volumen: %(volumename)s.  Código de retorno: %(rc)lu.  "
+"Error: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:523
 #, python-format
 msgid "Leaving delete_volume: %(volumename)s  Return code: %(rc)lu"
-msgstr ""
+msgstr "Saliendo de delete_volume: %(volumename)s  Código de retorno: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:530
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:275
 msgid "Entering create_snapshot."
-msgstr ""
+msgstr "Entrando en create_snapshot."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:534
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:278
 #, python-format
 msgid "Create snapshot: %(snapshot)s: volume: %(volume)s"
-msgstr ""
+msgstr "Crear instantánea: %(snapshot)s: volumen: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:544
 #: cinder/volume/drivers/emc/emc_smis_common.py:972
 #, python-format
 msgid "Device ID: %(deviceid)s: Storage System: %(storagesystem)s"
 msgstr ""
+"ID de dispositivo: %(deviceid)s: Sistema de almacenamiento: "
+"%(storagesystem)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:551
 #: cinder/volume/drivers/emc/emc_smis_common.py:553
@@ -6100,6 +6404,8 @@ msgstr ""
 #, python-format
 msgid "Cannot find Replication Service to create snapshot for volume %s."
 msgstr ""
+"No se puede encontrar el f de réplica para crear la instantánea para el "
+"volumen %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:558
 #, python-format
@@ -6108,6 +6414,10 @@ msgid ""
 "Source: %(volume)s  Replication Service: %(service)s  ElementName: "
 "%(elementname)s  Sync Type: 7  SourceElement: %(sourceelement)s."
 msgstr ""
+"Crear instantánea:  método: CreateElementReplica: Destino: %(snapshot)s  "
+"Origen: %(volume)s  Servicio de réplica: %(service)s  Nombre de elemento:"
+" %(elementname)s  Tipo de sincronización: 7  Elemento origen: "
+"%(sourceelement)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:574
 #, python-format
@@ -6115,6 +6425,8 @@ msgid ""
 "Create Snapshot: Volume: %(volumename)s  Snapshot: %(snapshotname)s  "
 "Return code: %(rc)lu"
 msgstr ""
+"Crear instantánea: Volumen: %(volumename)s  Instantánea: %(snapshotname)s"
+" Código de retorno: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:583
 #, python-format
@@ -6129,17 +6441,19 @@ msgid ""
 "Leaving create_snapshot: Snapshot: %(snapshot)s Volume: %(volume)s  "
 "Return code: %(rc)lu."
 msgstr ""
+"Saliendo de create_snapshot: Instantánea: %(snapshot)s Volumen: "
+"%(volume)s  Código de retorno: %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:613
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:302
 msgid "Entering delete_snapshot."
-msgstr ""
+msgstr "Entrando en delete_snapshot."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:617
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:306
 #, python-format
 msgid "Delete Snapshot: %(snapshot)s: volume: %(volume)s"
-msgstr ""
+msgstr "Suprimir instantánea: %(snapshot)s: volumen: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:623
 #, python-format
@@ -6147,6 +6461,8 @@ msgid ""
 "Delete Snapshot: %(snapshot)s: volume: %(volume)s. Finding "
 "StorageSychronization_SV_SV."
 msgstr ""
+"Suprimir instantánea: %(snapshot)s: volumen: %(volume)s Buscando "
+"StorageSychronization_SV_SV."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:631
 #, python-format
@@ -6154,6 +6470,8 @@ msgid ""
 "Snapshot: %(snapshot)s: volume: %(volume)s not found on the array. No "
 "snapshot to delete."
 msgstr ""
+"Instantánea: %(snapshot)s: el volumen %(volume)s no se ha encontrado en "
+"la matriz. No hay ningún volumen que suprimir."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:646
 #, python-format
@@ -6162,6 +6480,9 @@ msgid ""
 "ModifyReplicaSynchronization:  Replication Service: %(service)s  "
 "Operation: 19  Synchronization: %(sync_name)s."
 msgstr ""
+"Suprimir instantánea: Destino: %(snapshot)s  Origen: %(volume)s.  Método:"
+" ModifyReplicaSynchronization:  Servicio de réplica: %(service)s  "
+"Operación: 19  Sincronización: %(sync_name)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:662
 #, python-format
@@ -6169,6 +6490,8 @@ msgid ""
 "Delete Snapshot: Volume: %(volumename)s  Snapshot: %(snapshotname)s  "
 "Return code: %(rc)lu"
 msgstr ""
+"Suprimir instantánea: Volumen: %(volumename)s  Instantánea: "
+"%(snapshotname)s Código de retorno: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:671
 #, python-format
@@ -6176,6 +6499,8 @@ msgid ""
 "Error Delete Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s. Return code: %(rc)lu. Error: %(error)s"
 msgstr ""
+"Error al suprimir instantánea: Volumen: %(volumename)s  Instantánea: "
+"%(snapshotname)s. Código de retorno: %(rc)lu. Error: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:696
 #: cinder/volume/drivers/emc/emc_smis_common.py:711
@@ -6203,6 +6528,8 @@ msgid ""
 "Leaving delete_snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu."
 msgstr ""
+"Saliendo de delete_snapshot: Volumen: %(volumename)s Instantánea: "
+"%(snapshotname)s  Código de retorno: %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:745
 #, python-format
@@ -6210,21 +6537,23 @@ msgid ""
 "ExposePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(lun_name)s"
 "  InitiatorPortIDs: %(initiator)s  DeviceAccesses: 2"
 msgstr ""
+"ExposePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(lun_name)s"
+"  InitiatorPortIDs: %(initiator)s  DeviceAccesses: 2"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:760
 #, python-format
 msgid "ExposePaths parameter LunMaskingSCSIProtocolController: %(lunmasking)s"
-msgstr ""
+msgstr "Parámetro LunMaskingSCSIProtocolController de ExposePaths: %(lunmasking)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:771
-#, fuzzy, python-format
+#, python-format
 msgid "Error mapping volume %s."
-msgstr "Desasociar volumen %s"
+msgstr "Error al correlacionar volumen %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:775
-#, fuzzy, python-format
+#, python-format
 msgid "ExposePaths for volume %s completed successfully."
-msgstr "volumen %s: eliminado satisfactoriamente"
+msgstr "ExposePaths para el volumen %s se ha completado correctamente."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:791
 #, python-format
@@ -6232,16 +6561,18 @@ msgid ""
 "HidePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(device_id)s  "
 "LunMaskingSCSIProtocolController: %(lunmasking)s"
 msgstr ""
+"HidePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(device_id)s  "
+"LunMaskingSCSIProtocolController: %(lunmasking)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:804
 #, python-format
 msgid "Error unmapping volume %s."
-msgstr ""
+msgstr "Error al anular la correlación del volumen %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:808
-#, fuzzy, python-format
+#, python-format
 msgid "HidePaths for volume %s completed successfully."
-msgstr "volumen %s: eliminado satisfactoriamente"
+msgstr "HidePaths para el volumen %s se ha completado correctamente."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:821
 #, python-format
@@ -6249,16 +6580,18 @@ msgid ""
 "AddMembers: ConfigServicie: %(service)s  MaskingGroup: %(masking_group)s"
 "  Members: %(vol)s"
 msgstr ""
+"AddMembers: ConfigServicie: %(service)s  MaskingGroup: %(masking_group)s"
+"  Members: %(vol)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:836
 #, python-format
 msgid "Error mapping volume %(vol)s. %(error)s"
-msgstr ""
+msgstr "Error al correlacionar volumen %(vol)s. %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:841
-#, fuzzy, python-format
+#, python-format
 msgid "AddMembers for volume %s completed successfully."
-msgstr "volumen %s: eliminado satisfactoriamente"
+msgstr "AddMembers para el volumen %s se ha completado correctamente."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:854
 #, python-format
@@ -6266,52 +6599,58 @@ msgid ""
 "RemoveMembers: ConfigServicie: %(service)s  MaskingGroup: "
 "%(masking_group)s  Members: %(vol)s"
 msgstr ""
+"RemoveMembers: ConfigServicie: %(service)s  MaskingGroup: "
+"%(masking_group)s  Members: %(vol)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:867
 #, python-format
 msgid "Error unmapping volume %(vol)s. %(error)s"
-msgstr ""
+msgstr "Error al anular la correlación del volumen %(vol)s. %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:872
-#, fuzzy, python-format
+#, python-format
 msgid "RemoveMembers for volume %s completed successfully."
-msgstr "volumen %s: eliminado satisfactoriamente"
+msgstr "RemoveMembers para el volumen %s se ha completado correctamente."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:878
 #, python-format
 msgid "Map volume: %(volume)s"
-msgstr ""
+msgstr "Correlacionar volumen: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:887
 #: cinder/volume/drivers/emc/emc_smis_common.py:917
 #, python-format
 msgid "Cannot find Controller Configuration Service for storage system %s"
 msgstr ""
+"No se puede encontrar el servicio de configuración de controlador para el"
+" sistema de almacenamiento %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:901
 #, python-format
 msgid "Unmap volume: %(volume)s"
-msgstr ""
+msgstr "Anular correlación de volumen: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:907
 #, python-format
 msgid "Volume %s is not mapped. No volume to unmap."
 msgstr ""
+"El volumen %s no está correlacionado. No hay ningún volumen para el que "
+"anular correlación."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:931
 #, python-format
 msgid "Initialize connection: %(volume)s"
-msgstr ""
+msgstr "Inicializar conexión: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:937
 #, python-format
 msgid "Volume %s is already mapped."
-msgstr ""
+msgstr "El volumen %s ya está correlacionado."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:949
 #, python-format
 msgid "Terminate connection: %(volume)s"
-msgstr ""
+msgstr "Terminar conexión: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:956
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:197
@@ -6367,16 +6706,16 @@ msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1063
 msgid "Storage type not found."
-msgstr ""
+msgstr "No se ha encontrado el tipo de almacenamiento."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1079
 #, python-format
 msgid "Found Masking View: %s"
-msgstr ""
+msgstr "Vista de máscara encontrada: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1082
 msgid "Masking View not found."
-msgstr ""
+msgstr "No se ha encontrado la vista de máscara."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1097
 #, python-format
@@ -6389,76 +6728,81 @@ msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1122
 msgid "Ecom user not found."
-msgstr ""
+msgstr "No se ha encontrado el usuario de Ecom."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1142
 #, python-format
 msgid "Ecom IP: %(ecomIp)s Port: %(ecomPort)s"
-msgstr ""
+msgstr "IP de Ecom: %(ecomIp)s Puerto: %(ecomPort)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1146
 msgid "Ecom server not found."
-msgstr ""
+msgstr "No se ha encontrado el servidor de Ecom."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1153
-#, fuzzy
 msgid "Cannot connect to ECOM server"
-msgstr "Reconectado a la cola"
+msgstr "No se puede conectar al servidor de ECOM."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1165
 #, python-format
 msgid "Found Replication Service: %s"
-msgstr ""
+msgstr "Servicio de réplica encontrado: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1178
 #, python-format
 msgid "Found Storage Configuration Service: %s"
-msgstr ""
+msgstr "Servicio de configuración de almacenamiento encontrado: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1191
 #, python-format
 msgid "Found Controller Configuration Service: %s"
-msgstr ""
+msgstr "Servicio de configuración de controlador encontrado: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1204
 #, python-format
 msgid "Found Storage Hardware ID Management Service: %s"
 msgstr ""
+"Servicio de gestión de identificador de hardware de almacenamiento "
+"encontrado: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1248
 #, python-format
 msgid "Pool %(storage_type)s is not found."
-msgstr ""
+msgstr "La agrupación %(storage_type)s no se ha encontrado."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1254
 #, python-format
 msgid "Storage system not found for pool %(storage_type)s."
 msgstr ""
+"No se ha encontrado el sistema de almacenamiento para la agrupación "
+"%(storage_type)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1260
 #, python-format
 msgid "Pool: %(pool)s  SystemName: %(systemname)s."
-msgstr ""
+msgstr "Agrupación: %(pool)s  Nombre del sistema: %(systemname)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1277
 #, python-format
 msgid "Pool name: %(poolname)s  System name: %(systemname)s."
-msgstr ""
+msgstr "Nombre de la agrupación: %(poolname)s  Nombre del sistema: %(systemname)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1292
 #, python-format
 msgid "Volume %(volumename)s not found on the array."
-msgstr ""
+msgstr "El volumen %(volumename)s no se ha encontrado en la matriz."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1295
 #, python-format
 msgid "Volume name: %(volumename)s  Volume instance: %(vol_instance)s."
 msgstr ""
+"Nombre del volumen: %(volumename)s  Instancia del volumen: "
+"%(vol_instance)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1310
 #, python-format
 msgid "Source: %(volumename)s  Target: %(snapshotname)s."
-msgstr ""
+msgstr "Origen: %(volumename)s  Destino: %(snapshotname)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1322
 #, python-format
@@ -6466,6 +6810,8 @@ msgid ""
 "Source: %(volumename)s  Target: %(snapshotname)s. Storage Synchronized "
 "not found. "
 msgstr ""
+"Origen: %(volumename)s  Destino: %(snapshotname)s. No se ha encontrado el"
+" almacenamiento sincronizado. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1327
 #, python-format
@@ -6473,16 +6819,18 @@ msgid ""
 "Storage system: %(storage_system)s  Storage Synchronized instance: "
 "%(sync)s."
 msgstr ""
+"Sistema de almacenamiento: %(storage_system)s  Instancia de "
+"almacenamiento sincronizado: %(sync)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1353
 #, python-format
 msgid "Error finding %s."
-msgstr ""
+msgstr "Error al buscar %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1357
 #, python-format
 msgid "Found %(name)s: %(initiator)s."
-msgstr ""
+msgstr "Se ha encontrado %(name)s: %(initiator)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1417
 #, python-format
@@ -6490,6 +6838,8 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage system %(storage_system)s "
 "and initiator %(initiator)s is  %(ctrl)s."
 msgstr ""
+"LunMaskingSCSIProtocolController para el sistema de almacenamiento "
+"%(storage_system)s y el iniciador %(initiator)s es %(ctrl)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1458
 #, python-format
@@ -6497,6 +6847,8 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage volume %(vol)s and initiator"
 " %(initiator)s is  %(ctrl)s."
 msgstr ""
+"LunMaskingSCSIProtocolController para el volumen de almacenamiento "
+"%(vol)s y el iniciador %(initiator)s es %(ctrl)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1472
 #, python-format
@@ -6504,6 +6856,8 @@ msgid ""
 "Volume %(name)s not found on the array. Cannot determine if there are "
 "volumes mapped."
 msgstr ""
+"El volumen %(name)s no se ha encontrado en la matriz. No se puede "
+"determinar si hay volúmenes correlacionados."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1484
 #, python-format
@@ -6511,6 +6865,8 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage system %(storage)s and "
 "%(connector)s is %(ctrl)s."
 msgstr ""
+"LunMaskingSCSIProtocolController para el sistema de almacenamiento "
+"%(storage)s y %(connector)s es %(ctrl)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1496
 #, python-format
@@ -6518,11 +6874,13 @@ msgid ""
 "Found %(numVolumesMapped)d volumes on storage system %(storage)s mapped "
 "to %(initiator)s."
 msgstr ""
+"Se han encontrado %(numVolumesMapped)d volúmenes en el sistema de "
+"almacenamiento %(storage)s correlacionado con %(initiator)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1531
 #, python-format
 msgid "Available device number on %(storage)s: %(device)s."
-msgstr ""
+msgstr "Número de dispositivo disponible en %(storage)s: %(device)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1556
 #, python-format
@@ -6535,26 +6893,30 @@ msgstr ""
 #, python-format
 msgid "Device number not found for volume %(volumename)s %(vol_instance)s."
 msgstr ""
+"No se ha encontrado el número de dispositivo de destino para el volumen "
+"%(volumename)s %(vol_instance)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1597
 #, python-format
 msgid "Found device number %(device)d for volume %(volumename)s %(vol_instance)s."
 msgstr ""
+"Se ha encontrado el número de dispositivo %(device)d para el volumen "
+"%(volumename)s %(vol_instance)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1607
 #, python-format
 msgid "Device info: %(data)s."
-msgstr ""
+msgstr "Información de dispositivo: %(data)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1629
 #, python-format
 msgid "Masking view: %(view)s DeviceMaskingGroup: %(masking)s."
-msgstr ""
+msgstr "Vista de máscara: %(view)s DeviceMaskingGroup: %(masking)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1651
 #, python-format
 msgid "Found Storage Processor System: %s"
-msgstr ""
+msgstr "Sistema de procesador de almacenamiento encontrado: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1679
 #, python-format
@@ -6562,10 +6924,12 @@ msgid ""
 "iSCSIProtocolEndpoint for storage system %(storage_system)s and SP %(sp)s"
 " is  %(endpoint)s."
 msgstr ""
+"iSCSIProtocolEndpoint para el sistema de almacenamiento "
+"%(storage_system)s y el SP %(sp)s es %(endpoint)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1720
 msgid "Error finding Storage Hardware ID Service."
-msgstr ""
+msgstr "Error al buscar el servicio de ID de hardware de almacenamiento."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1726
 #, python-format
@@ -6573,41 +6937,47 @@ msgid ""
 "EMCGetTargetEndpoints: Service: %(service)s  Storage HardwareIDs: "
 "%(hardwareids)s."
 msgstr ""
+"EMCGetTargetEndpoints: %(service)s  ID de hardware de almacenamiento: "
+"%(hardwareids)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1738
 msgid "Error finding Target WWNs."
-msgstr ""
+msgstr "Error al buscar WWN de destino."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1748
 #, python-format
 msgid "Add target WWN: %s."
-msgstr ""
+msgstr "Añadir WWN de destino: %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1750
 #, python-format
 msgid "Target WWNs: %s."
-msgstr ""
+msgstr "WWN de destino: %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1766
 #, python-format
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
+"Los ID de hardware de almacenamiento para %(wwpns)s son "
+"%(foundInstances)s."
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
+"El punto final de ISCSI no se ha encontrado para el SP %(sp)s en el "
+"sistema de almacenamiento %(storage)s."
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
-msgstr ""
+msgstr "Propiedades de ISCSI: %s"
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:77
 msgid "Pool name is not specified."
@@ -6688,7 +7058,7 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:251
 #, python-format
 msgid "create_export: Volume: %(volume)s  Device ID: %(device_id)s"
-msgstr ""
+msgstr "create_export: Volumen: %(volume)s  ID de dispositivo: %(device_id)s"
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:292
 #, python-format
@@ -6888,93 +7258,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
-#, fuzzy, python-format
+#: cinder/volume/drivers/hds/hds.py:251
+#, python-format
 msgid "HDP not found: %s"
-msgstr "No se encuentra la dirección del enlace local.:%s"
+msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7062,7 +7432,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7130,6 +7500,8 @@ msgstr ""
 #, python-format
 msgid "create_snapshot:snapshot name:%(snapshot)s, volume name:%(volume)s."
 msgstr ""
+"create_snapshot: nombre de instantánea: %(snapshot)s, nombre de volumen: "
+"%(volume)s."
 
 #: cinder/volume/drivers/huawei/rest_common.py:354
 #, python-format
@@ -7173,6 +7545,8 @@ msgstr ""
 #, python-format
 msgid "terminate_connection:volume name: %(volume)s, initiator name: %(ini)s."
 msgstr ""
+"terminate_connection: nombre de volumen: %(volume)s, nombre de iniciador:"
+" %(ini)s."
 
 #: cinder/volume/drivers/huawei/rest_common.py:937
 #, python-format
@@ -7231,7 +7605,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7262,12 +7636,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7300,7 +7674,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7311,111 +7685,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7423,77 +7797,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7647,97 +8021,97 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
-msgstr ""
+msgstr "%s no está establecido"
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:143
 msgid "enter: do_setup"
-msgstr ""
+msgstr "entrar: do_setup"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:153
 #, python-format
@@ -7750,11 +8124,11 @@ msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:214
 msgid "leave: do_setup"
-msgstr ""
+msgstr "salir: do_setup"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:218
 msgid "enter: check_for_setup_error"
-msgstr ""
+msgstr "escriba: check_for_setup_error"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:222
 msgid "Unable to determine system name"
@@ -7769,6 +8143,8 @@ msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
+"La contraseña o la clave privada SSH es necesaria para la autenticación: "
+"defina la opción san_password o san_private_key"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:246
 #, python-format
@@ -7776,15 +8152,17 @@ msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
+"Se ha especificado el valor no permitido %d para "
+"storwize_svc_flashcopy_timeout: los valores válidos están entre 0 y 600"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
 msgid "leave: check_for_setup_error"
-msgstr ""
+msgstr "salir: check_for_setup_error"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:264
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
-msgstr ""
+msgstr "ensure_export: el volumen %s no se ha encontrado en el almacenamiento"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:283
 msgid "The connector does not contain the required information."
@@ -7793,7 +8171,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:307
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "entre: initialize_connection: volumen %(vol)s con conector %(conn)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:338
 msgid "CHAP secret exists for host but CHAP is disabled"
@@ -7803,16 +8181,18 @@ msgstr ""
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
+"initialize_connection: se ha encontrado un error en la obtención de "
+"atributos para el volumen %s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:355
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
-msgstr ""
+msgstr "No se ha encontrado el nombre de columna esperado en lsvdisk: %s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:357
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
-msgstr ""
+msgstr "initialize_connection: falta un atributo para el volumen %s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:374
 #, python-format
@@ -7820,11 +8200,15 @@ msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
+"initialize_connection: no se han encontrado nodos en el grupo de E/S "
+"%(gid)s para el volumen %(vol)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
+"initialize_connection: no se ha encontrado un nodo preferido para el "
+"volumen %s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:406
 msgid ""
@@ -7832,14 +8216,24 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
+"initialize_connection: se ha encontrado un error en la recopilación de "
+"las propiedades devueltas para el volumen %(vol)s y el conector %(conn)s."
+"\n"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7847,101 +8241,112 @@ msgid ""
 " connector %(conn)s\n"
 " properties: %(prop)s"
 msgstr ""
+"salir: initialize_connection:\n"
+" volumen: %(vol)s\n"
+" conector %(conn)s\n"
+" propiedades: %(prop)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "entre: terminate_connection: volumen %(vol)s con conector %(conn)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "salir: terminate_connection: volumen %(vol)s con conector %(conn)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
+"create_volume_from_snapshot: el tamaño de origen y de destino son "
+"distintos."
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
-msgstr ""
+msgstr "create_cloned_volume: el tamaño de origen y de destino son distintos."
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7949,31 +8354,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
-msgstr ""
+msgstr "No se ha podido obtener datos del almacenamiento"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8076,26 +8488,34 @@ msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
+"Se ha especificado un valor no permitido para storwize_svc_vol_rsize: "
+"defina un porcentaje (0-100) o -1"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:388
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
+"Se ha especificado un valor no permitido para storwize_svc_vol_warning: "
+"defina un porcentaje (0-100)"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:395
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
+"Se ha especificado un valor no permitido para storwize_svc_vol_grainsize:"
+" defina como 32, 64, 128 o 256"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
 msgid "System does not support compression"
-msgstr ""
+msgstr "El sistema no soporta la compresión"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:407
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
+"Si compression se define como True, rsize también debe definirse "
+"(distinto a -1)"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:413
 #, python-format
@@ -8103,6 +8523,8 @@ msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
+"Se ha especificado el valor no permitido %(prot)s para "
+"storwize_svc_connection_protocol: los valores válidos son %(enabled)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:422
 #, python-format
@@ -8121,7 +8543,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:504
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
-msgstr ""
+msgstr "salir: _create_vdisk: volumen %s "
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:531
 #, python-format
@@ -8158,6 +8580,8 @@ msgstr ""
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
+"El disco virtual %(name)s no está implicado en la correlación %(src)s -> "
+"%(tgt)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:637
 #, python-format
@@ -8194,15 +8618,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8214,18 +8645,17 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:213
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:250
-#, fuzzy, python-format
+#, python-format
 msgid ""
 "CLI Exception output:\n"
 " command: %(cmd)s\n"
 " stdout: %(out)s\n"
 " stderr: %(err)s"
 msgstr ""
-"%(description)s\n"
-"Comando: %(cmd)s\n"
-"Código de salida: %(exit_code)s\n"
-"Stdout: %(stdout)r\n"
-"Stderr: %(stderr)r"
+"Salida de excepción de CLI:\n"
+" mandato: %(cmd)s\n"
+" stdout: %(out)s\n"
+" stderr: %(err)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:53
 #, python-format
@@ -8257,12 +8687,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -8334,35 +8764,39 @@ msgstr ""
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
+"No hay ninguna propiedad de metadatos %(prop)s definida para el LUN "
+"%(name)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:105
-#, fuzzy, python-format
+#, python-format
 msgid "Using NetApp filer: %s"
-msgstr "Ejecutando instancias: %s"
+msgstr "Utilizando gestor de archivos de NetApp: %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:150
 msgid "Success getting LUN list from server"
-msgstr ""
+msgstr "La lista de LUN se ha obtenido correctamente del servidor"
 
 #: cinder/volume/drivers/netapp/iscsi.py:166
 #, python-format
 msgid "Created LUN with name %s"
-msgstr ""
+msgstr "Se ha creado el LUN con el nombre %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:175
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
+"No hay entradas en la tabla de LUN para el volumen o la instantánea "
+"%(name)s."
 
 #: cinder/volume/drivers/netapp/iscsi.py:191
 #, python-format
 msgid "Destroyed LUN %s"
-msgstr ""
+msgstr "Se ha destruido el LUN %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:227
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
-msgstr ""
+msgstr "El LUN %(name)s se ha correlacionado con el iniciador %(initiator_name)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
@@ -8372,24 +8806,30 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:238
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get LUN target details for the LUN %s"
-msgstr "Fallo al generar metadatos para la ip %s"
+msgstr ""
+"Se ha encontrado un error en la obtención de los detalles de destino de "
+"LUN para el LUN %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:249
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get target portal for the LUN %s"
-msgstr "Fallo al generar metadatos para la ip %s"
+msgstr ""
+"Se ha encontrado un error en la obtención del portal de destino para el "
+"LUN %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:252
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get target IQN for the LUN %s"
-msgstr "Fallo al generar metadatos para la ip %s"
+msgstr ""
+"Se ha encontrado un error en la obtención del IQN de destino para el LUN "
+"%s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:290
-#, fuzzy, python-format
+#, python-format
 msgid "Snapshot %s deletion successful"
-msgstr "volumen %s: eliminado satisfactoriamente"
+msgstr "La supresión de la instantánea %s se ha completado correctamente"
 
 #: cinder/volume/drivers/netapp/iscsi.py:310
 #: cinder/volume/drivers/netapp/iscsi.py:557
@@ -8403,20 +8843,24 @@ msgstr ""
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
+"Se ha anulado la correlación del LUN %(name)s con el iniciador "
+"%(initiator_name)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:414
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
-msgstr ""
+msgstr "Error al correlacionar el LUN. Código: %(code)s, mensaje: %(message)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:433
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
+"Error al anular la correlación del LUN. Código: %(code)s, mensaje: "
+"%(message)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:503
 msgid "Object is not a NetApp LUN."
-msgstr ""
+msgstr "El objeto no es un LUN de NetApp."
 
 #: cinder/volume/drivers/netapp/iscsi.py:535
 #, python-format
@@ -8515,12 +8959,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:841
 #, python-format
 msgid "No iscsi service found for vserver %s"
-msgstr ""
+msgstr "No se ha encontrado ningún servicio iSCSI para el vserver %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1008
 #, python-format
 msgid "Cloned LUN with new name %s"
-msgstr ""
+msgstr "El LUN se ha clonado con el nuevo nombre de %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1012
 #, python-format
@@ -8543,9 +8987,11 @@ msgid "Api version could not be determined."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:1190
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get vol with required size for volume: %s"
-msgstr "Fallo al generar metadatos para la ip %s"
+msgstr ""
+"Se ha encontrado un error en la obtención del volumen con el tamaño "
+"necesario para el volumen %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1299
 #, python-format
@@ -8556,11 +9002,15 @@ msgstr ""
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
+"La operación de clonación con SRC %(name)s y destino %(new_name)s se ha "
+"completado"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1446
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
+"Se ha encontrado un error en la operación de clonación con SRC %(name)s y"
+" destino %(new_name)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1509
 msgid "Volume refresh job already running. Returning..."
@@ -8699,7 +9149,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:460
 #, python-format
 msgid "Converted to raw, but format is now %s"
-msgstr ""
+msgstr "Convertido a sin formato, pero el formato es ahora %s"
 
 #: cinder/volume/drivers/netapp/nfs.py:470
 #, python-format
@@ -8777,7 +9227,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:866
 #, python-format
 msgid "No interface found on cluster for ip %s"
-msgstr ""
+msgstr "No se ha encontrado ninguna interfaz en el clúster para la IP %s"
 
 #: cinder/volume/drivers/netapp/nfs.py:907
 #, python-format
@@ -8923,11 +9373,13 @@ msgstr ""
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
+"No se ha encontrado ninguna vía de acceso de almacenamiento para la vía "
+"de acceso de exportación %s"
 
 #: cinder/volume/drivers/netapp/nfs.py:1359
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
-msgstr ""
+msgstr "Clonando con src %(src_path)s, dest %(dest_path)s"
 
 #: cinder/volume/drivers/netapp/ssc_utils.py:241
 #, python-format
@@ -9294,9 +9746,9 @@ msgid "Error deleting vol with label %s."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:105
-#, fuzzy, python-format
+#, python-format
 msgid "Volume %s does not exist in Nexenta SA"
-msgstr "el grupo de volumenes %s no existe"
+msgstr "El volumen %s no existe en Nexenta SA"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:151
 #, python-format
@@ -9372,10 +9824,12 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
+"Se ha ignorado el error de creación de destino \"%s\" al asegurar la "
+"exportación"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:486
 #, python-format
@@ -9403,6 +9857,8 @@ msgid ""
 "Got error trying to destroy target group %(target_group)s, assuming it is"
 " already gone: %(exc)s"
 msgstr ""
+"Se ha obtenido un error al intentar destruir el grupo de destino "
+"%(target_group)s, se supone que ya no existe: %(exc)s"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:559
 #, python-format
@@ -9410,29 +9866,31 @@ msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
 "gone: %(exc)s"
 msgstr ""
+"Se ha obtenido un error al intentar suprimir el destino %(target)s, se "
+"supone que ya no existe: %(exc)s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:83
 #, python-format
 msgid "Sending JSON data: %s"
-msgstr ""
+msgstr "Enviando datos JSON: %s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:88
 msgid "No headers in server response"
-msgstr ""
+msgstr "No hay cabeceras en la respuesta de servidor"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:89
 msgid "Bad response from server"
-msgstr ""
+msgstr "Respuesta errónea del servidor"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:90
 #, python-format
 msgid "Auto switching to HTTPS connection to %s"
-msgstr ""
+msgstr "Conmutando automáticamente a conexión HTTPS con %s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:96
-#, fuzzy, python-format
+#, python-format
 msgid "Got response: %s"
-msgstr "respuesta %s"
+msgstr "Se ha obtenido una respuesta: %s "
 
 #: cinder/volume/drivers/nexenta/nfs.py:85
 #, python-format
@@ -9495,290 +9953,304 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
-msgstr ""
+msgstr "Especifique san_password o san_private_key"
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
-msgstr ""
+msgstr "se debe establecer san_ip"
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
-msgstr ""
+msgstr "No se puede analizar la salida de la vista de lista: %s"
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
-msgstr ""
+msgstr "No se ha encontrado LUID para %(zfs_poolname)s. Salida=%(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
-msgstr ""
+msgstr "CPG (%s) no existe en la matriz"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
+"Debe especificar un valor válido de persona %(valid)s, el valor "
+"'%(persona)s' no es válido."
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
+"Debe especificar un tipo de suministro válido %(valid)s, el valor "
+"'%(prov)s' no es válido."
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:763
-#, fuzzy, python-format
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
+#, python-format
 msgid "Volume (%s) already exists on array"
-msgstr "el grupo %s ya existe"
+msgstr "El volumen (%s) ya existe en la matriz"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
-msgstr ""
+msgstr "El mandato CLIQ ha devuelto %s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, python-format
 msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
 msgstr ""
+"Respuesta formada incorrectamente al mandato CLIQ %(verb)s %(cliq_args)s."
+" Resultado=%(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, python-format
 msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
 msgstr ""
+"Error al ejecutar el mandato CLIQ %(verb)s %(cliq_args)s.  "
+"Resultado=%(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, python-format
 msgid ""
 "Unexpected number of virtual ips for cluster  %(cluster_name)s. "
 "Result=%(_xml)s"
 msgstr ""
+"Número inesperado de IP virtuales para el clúster %(cluster_name)s. "
+"Resultado=%(_xml)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
+msgstr "Información de volumen: %(volume_name)s => %(volume_attributes)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
-msgstr ""
+msgstr "local_path no soportada"
 
 #: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:75
 #, python-format
@@ -10170,7 +10642,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10330,7 +10802,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10450,62 +10922,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10731,7 +11203,7 @@ msgstr ""
 
 #: cinder/volume/drivers/vmware/volumeops.py:744
 msgid "Copying disk data before snapshot of the VM"
-msgstr ""
+msgstr "Copiando datos de disco antes de instantánea de la máquina virtual"
 
 #: cinder/volume/drivers/vmware/volumeops.py:754
 #, python-format
@@ -10788,9 +11260,9 @@ msgid "Filtered hubs: %s"
 msgstr ""
 
 #: cinder/volume/drivers/windows/windows.py:102
-#, fuzzy, python-format
+#, python-format
 msgid "Creating folder %s "
-msgstr "Borrando usuario %s"
+msgstr "Creando la carpeta %s "
 
 #: cinder/volume/drivers/windows/windows_utils.py:47
 #, python-format
@@ -10817,7 +11289,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10825,35 +11297,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10861,42 +11338,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/es_MX/LC_MESSAGES/cinder.po b/cinder/locale/es_MX/LC_MESSAGES/cinder.po
index 90f812c83..32d7d6132 100644
--- a/cinder/locale/es_MX/LC_MESSAGES/cinder.po
+++ b/cinder/locale/es_MX/LC_MESSAGES/cinder.po
@@ -1,17 +1,18 @@
 # Spanish (Mexico) translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
+# electrocucaracha <chipahuac@hotmail.com>, 2013
 msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-08-30 09:12+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Spanish (Mexico) "
-"(http://www.transifex.com/projects/p/openstack/language/es_MX/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/es_MX/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -30,7 +31,7 @@ msgstr ""
 
 #: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
-msgstr ""
+msgstr "Ha ocurrido un error desconocido."
 
 #: cinder/exception.py:88
 msgid "Exception in string format operation"
@@ -58,11 +59,11 @@ msgstr ""
 
 #: cinder/exception.py:124
 msgid "Not authorized."
-msgstr ""
+msgstr "Sin autorización."
 
 #: cinder/exception.py:129
 msgid "User does not have admin privileges"
-msgstr ""
+msgstr "El usuario no tiene permisos de administrador"
 
 #: cinder/exception.py:133
 #, python-format
@@ -103,7 +104,7 @@ msgstr ""
 
 #: cinder/exception.py:167
 msgid "The results are invalid."
-msgstr ""
+msgstr "Los resultados son inválidos."
 
 #: cinder/exception.py:171
 #, python-format
@@ -737,34 +738,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +784,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +803,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1328,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1465,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1528,7 +1541,7 @@ msgstr ""
 #: cinder/api/openstack/wsgi.py:671
 #, python-format
 msgid "Exception handling resource: %s"
-msgstr ""
+msgstr "Error al manejar el recurso: %s"
 
 #: cinder/api/openstack/wsgi.py:676
 #, python-format
@@ -1698,7 +1711,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1720,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2035,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2100,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2111,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
+#, python-format
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Deleting base image='%s'"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:457
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:463
+#, python-format
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:485
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Piping cmd1='%s' into..."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2934,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2956,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3123,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3141,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3155,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3130,7 +3206,7 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migration.py:37
 msgid "version should be an integer"
-msgstr ""
+msgstr "La versión debe ser un entero"
 
 #: cinder/db/sqlalchemy/migration.py:64
 msgid "Upgrade DB using Essex release first."
@@ -3172,11 +3248,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,25 +3481,25 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
-msgstr ""
+msgstr "Error al cargar configuración de entrada %(log_config)s: %(err_msg)s"
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
-msgstr ""
+msgstr "Llamado crítico de configuración en desuso ; %(msg)s"
 
 #: cinder/openstack/common/loopingcall.py:82
 #, python-format
@@ -3431,7 +3507,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3650,7 +3726,7 @@ msgstr ""
 
 #: cinder/openstack/common/db/exception.py:44
 msgid "Invalid Parameter: Unicode is not supported by the current database."
-msgstr ""
+msgstr "Parámetro inválido : Unicode no está soportado por la base de datos actual"
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:487
 msgid "DB exception wrapped."
@@ -3758,12 +3834,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3910,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3944,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3976,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3985,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3998,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4016,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4276,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4369,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4397,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4431,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4451,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4460,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4474,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4523,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4850,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4983,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5063,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5384,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5718,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5752,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5828,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6646,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6941,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7115,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7284,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7315,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7353,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7364,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7476,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7700,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7885,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7908,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8014,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8266,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8331,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9446,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9569,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10248,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10408,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10528,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10895,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10903,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10944,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/eu/LC_MESSAGES/cinder.po b/cinder/locale/eu/LC_MESSAGES/cinder.po
index d38a1f981..1994a095f 100644
--- a/cinder/locale/eu/LC_MESSAGES/cinder.po
+++ b/cinder/locale/eu/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Basque translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-11-06 03:20+0000\n"
-"Last-Translator: Tom Fifield <tom@openstack.org>\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Basque "
-"(http://www.transifex.com/projects/p/openstack/language/eu/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/eu/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/eu_ES/LC_MESSAGES/cinder.po b/cinder/locale/eu_ES/LC_MESSAGES/cinder.po
index a07e68667..b62d517be 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-03-29 06:10+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
 "PO-Revision-Date: 2013-11-26 20:45+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Basque (Spain) "
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/fa/LC_MESSAGES/cinder.po b/cinder/locale/fa/LC_MESSAGES/cinder.po
index b5d8c7cc8..1461ec97f 100644
--- a/cinder/locale/fa/LC_MESSAGES/cinder.po
+++ b/cinder/locale/fa/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Persian translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-11-26 20:45+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Persian "
-"(http://www.transifex.com/projects/p/openstack/language/fa/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/fa/)\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/fi_FI/LC_MESSAGES/cinder.po b/cinder/locale/fi_FI/LC_MESSAGES/cinder.po
index 3968f9e46..81b129060 100644
--- a/cinder/locale/fi_FI/LC_MESSAGES/cinder.po
+++ b/cinder/locale/fi_FI/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Finnish (Finland) translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-05-08 11:44+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Finnish (Finland) "
-"(http://www.transifex.com/projects/p/openstack/language/fi_FI/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/fi_FI/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/fil/LC_MESSAGES/cinder.po b/cinder/locale/fil/LC_MESSAGES/cinder.po
index a5686bcd5..6b50178e8 100644
--- a/cinder/locale/fil/LC_MESSAGES/cinder.po
+++ b/cinder/locale/fil/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Filipino translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-09-26 22:10+0000\n"
-"Last-Translator: Tom Fifield <tom@openstack.org>\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Filipino "
-"(http://www.transifex.com/projects/p/openstack/language/fil/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/fil/)\n"
 "Plural-Forms: nplurals=2; plural=(n > 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/fr/LC_MESSAGES/cinder.po b/cinder/locale/fr/LC_MESSAGES/cinder.po
index 91cdddcb5..00bd2177c 100644
--- a/cinder/locale/fr/LC_MESSAGES/cinder.po
+++ b/cinder/locale/fr/LC_MESSAGES/cinder.po
@@ -1,16 +1,20 @@
-# French translation for cinder
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the cinder package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+# French translations for cinder.
+# Copyright (C) 2014 ORGANIZATION
+# This file is distributed under the same license as the cinder project.
 #
-msgid ""
-msgstr ""
-"Project-Id-Version:  cinder\n"
-"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-03-29 06:10+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"
+# Translators:
+# steff00 <stephane.eveillard@gmail.com>, 2013
+# François Bureau <francois.bureau@cloudwatt.com>, 2013
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011
+msgid ""
+msgstr ""
+"Project-Id-Version:  Cinder\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
+"Language-Team: French "
+"(http://www.transifex.com/projects/p/cinder/language/fr/)\n"
 "Plural-Forms: nplurals=2; plural=(n > 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -20,12 +24,14 @@ msgstr ""
 #: cinder/context.py:63
 #, python-format
 msgid "Arguments dropped when creating context: %s"
-msgstr ""
+msgstr "Arguments supprimés lors de la création du contexte : %s"
 
 #: cinder/context.py:107
 #, python-format
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
+"read_deleted peut uniquement correspondre à 'no', 'yes' ou 'only', et non"
+" %r"
 
 #: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
@@ -33,12 +39,14 @@ msgstr "Une exception inconnue s'est produite."
 
 #: cinder/exception.py:88
 msgid "Exception in string format operation"
-msgstr ""
+msgstr "Exception dans l'opération de format de chaîne"
 
 #: cinder/exception.py:107
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
+"Réponse erronée ou inattendue de l'API backend du volume de stockage : "
+"%(data)s"
 
 #: cinder/exception.py:112
 #, python-format
@@ -69,9 +77,9 @@ msgid "Policy doesn't allow %(action)s to be performed."
 msgstr "Le réglage des droits n'autorise pas %(action)s à être effectué(e)(s)"
 
 #: cinder/exception.py:137
-#, fuzzy, python-format
+#, python-format
 msgid "Not authorized for image %(image_id)s."
-msgstr "Pas de méthode pour le message : %s"
+msgstr "Non autorisé pour l'image %(image_id)s."
 
 #: cinder/exception.py:141
 msgid "Volume driver not ready."
@@ -92,18 +100,17 @@ msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
 #: cinder/exception.py:159
-#, fuzzy, python-format
+#, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
-msgstr "Le volume %(volume_id)s n'est lié à rien"
+msgstr "Le volume %(volume_id)s est toujours attaché. Détachez-le préalablement."
 
 #: cinder/exception.py:163
 msgid "Failed to load data into json format"
 msgstr "Échec du chargement des données au format JSON"
 
 #: cinder/exception.py:167
-#, fuzzy
 msgid "The results are invalid."
-msgstr "La requête est invalide."
+msgstr "Le résultat n'est pas valide."
 
 #: cinder/exception.py:171
 #, python-format
@@ -152,7 +159,7 @@ msgstr "Le service est indisponible actuellement."
 #: cinder/exception.py:210
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
-msgstr ""
+msgstr "L'image %(image_id)s est inacceptable : %(reason)s"
 
 #: cinder/exception.py:214
 #, python-format
@@ -162,21 +169,23 @@ msgstr ""
 #: cinder/exception.py:218
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
-msgstr ""
+msgstr "UUID attendu mais %(uuid)s reçu."
 
 #: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
-msgstr ""
+msgstr "Ressource introuvable."
 
 #: cinder/exception.py:228
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
-msgstr ""
+msgstr "Le volume %(volume_id)s est introuvable."
 
 #: cinder/exception.py:232
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
+"Le volume %(volume_id)s ne comporte pas de métadonnées avec la clé "
+"%(metadata_key)s."
 
 #: cinder/exception.py:237
 #, python-format
@@ -199,16 +208,18 @@ msgstr ""
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
+"L'instantané %(snapshot_id)s n'a pas de métadonnées avec la clé "
+"%(metadata_key)s."
 
 #: cinder/exception.py:255
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
-msgstr ""
+msgstr "Le type de volume %(volume_type_id)s est introuvable."
 
 #: cinder/exception.py:259
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
-msgstr ""
+msgstr "Le type de volume portant le nom %(volume_type_name)s est introuvable."
 
 #: cinder/exception.py:264
 #, python-format
@@ -216,6 +227,8 @@ msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
+"Le type de volume %(volume_type_id)s ne comporte pas de spécs supp avec "
+"la clé %(extra_specs_key)s."
 
 #: cinder/exception.py:269
 #, python-format
@@ -227,62 +240,62 @@ msgstr ""
 #: cinder/exception.py:274
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
-msgstr ""
+msgstr "L'instantané %(snapshot_id)s est introuvable."
 
 #: cinder/exception.py:278
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
-msgstr ""
+msgstr "Suppression du volume %(volume_name)s ayant un instantané"
 
 #: cinder/exception.py:282
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
-msgstr ""
+msgstr "Suppression de l'instantané %(snapshot_name)s ayant des volumes dépendants"
 
 #: cinder/exception.py:287
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
-msgstr ""
+msgstr "Aucun ID cible trouvé pour le volume %(volume_id)s."
 
 #: cinder/exception.py:291
 #, python-format
 msgid "Invalid image href %(image_href)s."
-msgstr ""
+msgstr "href %(image_href)s d'image non valide."
 
 #: cinder/exception.py:295
 #, python-format
 msgid "Image %(image_id)s could not be found."
-msgstr ""
+msgstr "L'image %(image_id)s est introuvable."
 
 #: cinder/exception.py:299
 #, python-format
 msgid "Service %(service_id)s could not be found."
-msgstr ""
+msgstr "Le service %(service_id)s est introuvable."
 
 #: cinder/exception.py:303
 #, python-format
 msgid "Host %(host)s could not be found."
-msgstr ""
+msgstr "L'hôte %(host)s est introuvable."
 
 #: cinder/exception.py:307
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
-msgstr ""
+msgstr "Filtre hôte du planificateur %(filter_name)s introuvable."
 
 #: cinder/exception.py:311
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
-msgstr ""
+msgstr "Peseur de l'hôte du planificateur %(weigher_name)s introuvable."
 
 #: cinder/exception.py:315
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
-msgstr ""
+msgstr "Fichier binaire %(binary)s introuvable sur l'hôte %(host)s."
 
 #: cinder/exception.py:319
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
-msgstr ""
+msgstr "Expiration de réservation non valide %(expire)s."
 
 #: cinder/exception.py:323
 #, python-format
@@ -290,50 +303,52 @@ msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
+"La modification définira une utilisation inférieure à 0 pour les "
+"ressources suivantes : %(unders)s"
 
 #: cinder/exception.py:328
 msgid "Quota could not be found"
-msgstr ""
+msgstr "Quota introuvable"
 
 #: cinder/exception.py:332
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
-msgstr ""
+msgstr "Ressources de quota inconnues %(unknown)s."
 
 #: cinder/exception.py:336
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
-msgstr ""
+msgstr "Quota du projet %(project_id)s introuvable."
 
 #: cinder/exception.py:340
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
-msgstr ""
+msgstr "Classe de quota %(class_name)s introuvable."
 
 #: cinder/exception.py:344
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
-msgstr ""
+msgstr "Utilisation de quota pour le projet %(project_id)s introuvable."
 
 #: cinder/exception.py:348
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
-msgstr ""
+msgstr "Réservation de quota %(uuid)s introuvable."
 
 #: cinder/exception.py:352
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
-msgstr ""
+msgstr "Quota dépassé pour les ressources : %(overs)s"
 
 #: cinder/exception.py:356
 #, python-format
 msgid "File %(file_path)s could not be found."
-msgstr ""
+msgstr "Fichier %(file_path)s introuvable."
 
 #: cinder/exception.py:365
-#, fuzzy, python-format
+#, python-format
 msgid "Volume Type %(id)s already exists."
-msgstr "le groupe %s existe déjà"
+msgstr "Le type de volume %(id)s existe déjà."
 
 #: cinder/exception.py:369
 #, python-format
@@ -348,27 +363,27 @@ msgstr ""
 #: cinder/exception.py:377
 #, python-format
 msgid "Malformed message body: %(reason)s"
-msgstr ""
+msgstr "Format de corps de message non valide : %(reason)s"
 
 #: cinder/exception.py:381
 #, python-format
 msgid "Could not find config at %(path)s"
-msgstr ""
+msgstr "Configuration introuvable dans %(path)s"
 
 #: cinder/exception.py:385
-#, fuzzy, python-format
+#, python-format
 msgid "Could not find parameter %(param)s"
-msgstr "Imposible de trouver une exportation iSCSI pour le volume %s"
+msgstr "Impossible de trouver les paramètres %(param)s"
 
 #: cinder/exception.py:389
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
-msgstr ""
+msgstr "Echec du chargement de l'app de collage '%(name)s' depuis %(path)s"
 
 #: cinder/exception.py:393
 #, python-format
 msgid "No valid host was found. %(reason)s"
-msgstr ""
+msgstr "Hôte non valide trouvé. %(reason)s"
 
 #: cinder/exception.py:402
 #, python-format
@@ -385,37 +400,39 @@ msgstr ""
 #: cinder/exception.py:415
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
-msgstr ""
+msgstr "Nombre maximal de volumes autorisés (%(allowed)d) dépassé"
 
 #: cinder/exception.py:419
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
-msgstr ""
+msgstr "Nombre maximal d'instantanés autorisés (%(allowed)d) dépassé"
 
 #: cinder/exception.py:423
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
-msgstr ""
+msgstr "Plusieurs volumes portant le nom %(vol_name)s détectés"
 
 #: cinder/exception.py:427
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
+"Impossible de créer volume_type avec le nom %(name)s et les "
+"spécifications %(extra_specs)s"
 
 #: cinder/exception.py:432
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
-msgstr ""
+msgstr "Commande inconnue ou non prise en charge %(cmd)s"
 
 #: cinder/exception.py:436
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
-msgstr ""
+msgstr "Format incorrect de la réponse à la commande %(cmd)s : %(reason)s"
 
 #: cinder/exception.py:440
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
-msgstr ""
+msgstr "Echec de l'opération avec statut = %(status)s. Vidage complet : %(data)s"
 
 #: cinder/exception.py:444
 #, python-format
@@ -423,6 +440,8 @@ msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
+"Impossible de mettre à jour les métadonnées Glance, la clé %(key)s existe"
+" pour l'ID volume %(volume_id)s"
 
 #: cinder/exception.py:449
 #, python-format
@@ -450,9 +469,9 @@ msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:469
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to copy image to volume: %(reason)s"
-msgstr "Impossible de trouver le volume %s"
+msgstr ""
 
 #: cinder/exception.py:473
 msgid "Invalid Ceph args provided for backup rbd operation"
@@ -477,16 +496,16 @@ msgstr ""
 #: cinder/exception.py:493
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
-msgstr ""
+msgstr "Sauvegarde %(backup_id)s introuvable."
 
 #: cinder/exception.py:497
 msgid "Failed to identify volume backend."
 msgstr ""
 
 #: cinder/exception.py:501
-#, fuzzy, python-format
+#, python-format
 msgid "Invalid backup: %(reason)s"
-msgstr "Backend invalide : %s"
+msgstr "Sauvegarde non valide : %(reason)s"
 
 #: cinder/exception.py:505
 #, python-format
@@ -606,39 +625,39 @@ msgid "Zadara Cinder Driver exception."
 msgstr ""
 
 #: cinder/exception.py:611
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to create server object for initiator %(name)s"
-msgstr ""
-"Impossible de créer VDI sur SR %(sr_ref)s pour l'instance "
-"%(instance_name)s"
+msgstr "Impossible de créer l'objet serveur pour l'initiateur %(name)s"
 
 #: cinder/exception.py:615
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
-msgstr ""
+msgstr "Impossible de localiser l'objet serveur pour l'initiateur %(name)s"
 
 #: cinder/exception.py:619
 msgid "Unable to find any active VPSA controller"
-msgstr ""
+msgstr "Aucun contrôleur VPSA actif trouvé"
 
 #: cinder/exception.py:623
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
-msgstr ""
+msgstr "Echec de l'extraction des attachements pour le volume %(name)s"
 
 #: cinder/exception.py:627
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
+"Informations d'attachement non valides pour le volume %(name)s : "
+"%(reason)s"
 
 #: cinder/exception.py:631
 #, python-format
 msgid "Bad HTTP response status %(status)s"
-msgstr ""
+msgstr "Etat de réponse HTTP %(status)s erroné "
 
 #: cinder/exception.py:636
 msgid "Bad response from SolidFire API"
-msgstr ""
+msgstr "Réponse erronée de l'API SolidFire"
 
 #: cinder/exception.py:640
 msgid "SolidFire Cinder Driver exception"
@@ -647,12 +666,12 @@ msgstr ""
 #: cinder/exception.py:644
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
-msgstr ""
+msgstr "Erreur dans la réponse de l'API SolidFire : data = %(data)s"
 
 #: cinder/exception.py:648
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
-msgstr ""
+msgstr "Compte %(account_name)s introuvable sur l'unité Solidfire"
 
 #: cinder/exception.py:654
 #, python-format
@@ -660,27 +679,25 @@ msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
 #: cinder/exception.py:659
-#, fuzzy
 msgid "Unknown NFS exception"
-msgstr "Une exception inconnue s'est produite."
+msgstr "Exception NFS inconnue"
 
 #: cinder/exception.py:663
 msgid "No mounted NFS shares found"
-msgstr ""
+msgstr "Aucun partage NFS monté trouvé"
 
 #: cinder/exception.py:667 cinder/exception.py:680
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
-msgstr ""
+msgstr "Aucun partage ne pouvant héberger l'hôte %(volume_size)sG"
 
 #: cinder/exception.py:672
-#, fuzzy
 msgid "Unknown Gluster exception"
-msgstr "Une exception inconnue s'est produite."
+msgstr "Exception Gluster inconnue"
 
 #: cinder/exception.py:676
 msgid "No mounted Gluster shares found"
-msgstr ""
+msgstr "Aucun partage Gluster monté trouvé"
 
 #: cinder/exception.py:684
 #, python-format
@@ -731,44 +748,44 @@ msgstr ""
 
 #: cinder/manager.py:128
 msgid "Notifying Schedulers of capabilities ..."
-msgstr ""
+msgstr "Notification aux planificateurs des capacités..."
 
 #: cinder/policy.py:30
 msgid "JSON file representing policy"
-msgstr ""
+msgstr "Fichier JSON représentant la politique"
 
 #: cinder/policy.py:33
 msgid "Rule checked when requested rule is not found"
-msgstr ""
+msgstr "Règle vérifiée lorsque la règle demandée est introuvable"
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -787,17 +804,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
-#, fuzzy, python-format
+#: cinder/service.py:99
+#, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
-msgstr "Démarrage du noeud %(topic)s (version %(vcs_string)s)"
+msgstr "Démarrage du noeud %(topic)s (version %(version_string)s)"
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -806,40 +823,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr "Service détruit sans entrée dans la base de données"
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr "L'objet du service de base de données à disparru, re-création en cours."
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr "Récupération du modelle de connexion serveur terminée!"
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr "Le modèle de serveur à disparu"
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
-msgstr ""
+msgstr "serve() peut uniquement être appelé une fois"
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
-#, fuzzy
 msgid "Full set of CONF:"
-msgstr "Ensemble de propriétés complet :"
+msgstr "Ensemble complet de CONF :"
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -856,12 +872,12 @@ msgstr ""
 
 #: cinder/utils.py:213
 msgid "Specify a password or private_key"
-msgstr ""
+msgstr "Spécifiez un mot de passe ou private_key"
 
 #: cinder/utils.py:229
-#, fuzzy, python-format
+#, python-format
 msgid "Error connecting via ssh: %s"
-msgstr "Connexion à libvirt: %s"
+msgstr "Erreur lors de la connexion via SSH : %s"
 
 #: cinder/utils.py:413
 #, python-format
@@ -876,7 +892,7 @@ msgstr "backend %s"
 #: cinder/utils.py:699
 #, python-format
 msgid "Could not remove tmpdir: %s"
-msgstr ""
+msgstr "Impossible de supprimer tmpdir : %s"
 
 #: cinder/utils.py:760
 #, python-format
@@ -886,7 +902,7 @@ msgstr ""
 #: cinder/utils.py:782
 #, python-format
 msgid "%s is not a string or unicode"
-msgstr ""
+msgstr "%s n'est pas une chaîne ou unicode"
 
 #: cinder/utils.py:786
 #, python-format
@@ -896,33 +912,35 @@ msgstr ""
 #: cinder/utils.py:791
 #, python-format
 msgid "%(name)s has more than %(max_length)s characters."
-msgstr ""
+msgstr "%(name)s contient plus de %(max_length)s caractères."
 
 #: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find cert_file : %s"
-msgstr "Impossible de trouver SR du VDB %s"
+msgstr "Impossible de trouver cert_file : %s"
 
 #: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find ca_file : %s"
-msgstr "Impossible de trouver SR du VDB %s"
+msgstr "Impossible de trouver ca_file : %s"
 
 #: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find key_file : %s"
-msgstr "Impossible de trouver SR du VDB %s"
+msgstr "Impossible de trouver key_file : %s"
 
 #: 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 ""
+"Lors de l'exécution du serveur en mode SSL, vous devez spécifier une "
+"valeur d'option cert_file et key_file dans votre fichier de configuration"
 
 #: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
-msgstr ""
+msgstr "Liaison impossible à %(host)s:%(port)s après une tentative de 30 secondes"
 
 #: cinder/wsgi.py:215
 #, python-format
@@ -931,11 +949,11 @@ msgstr ""
 
 #: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
-msgstr ""
+msgstr "Arrêt du serveur WSGI."
 
 #: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
-msgstr ""
+msgstr "Le serveur WSGI a été arrêté."
 
 #: cinder/wsgi.py:322
 msgid "You must implement __call__"
@@ -955,83 +973,83 @@ msgstr ""
 
 #: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:282
 msgid "limit param must be an integer"
-msgstr ""
+msgstr "le paramètre limit doit être un entier"
 
 #: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:279
 msgid "limit param must be positive"
-msgstr ""
+msgstr "le paramètre limit doit être positif"
 
 #: cinder/api/common.py:120
 msgid "offset param must be an integer"
-msgstr ""
+msgstr "le paramètre offset doit être un entier"
 
 #: cinder/api/common.py:134
 msgid "offset param must be positive"
-msgstr ""
+msgstr "le paramètre offset doit être positif"
 
 #: cinder/api/common.py:162
 #, python-format
 msgid "marker [%s] not found"
-msgstr ""
+msgstr "le marqueur [%s] est introuvable"
 
 #: cinder/api/common.py:189
 #, python-format
 msgid "href %s does not contain version"
-msgstr ""
+msgstr "href %s ne contient pas de version"
 
 #: cinder/api/extensions.py:183
 msgid "Initializing extension manager."
-msgstr ""
+msgstr "Initialisation du gestionnaire d'extension."
 
 #: cinder/api/extensions.py:198
 #, python-format
 msgid "Loaded extension: %s"
-msgstr ""
+msgstr "Extension chargée : %s"
 
 #: cinder/api/extensions.py:236
 #, python-format
 msgid "Ext name: %s"
-msgstr ""
+msgstr "Nom d'extension : %s"
 
 #: cinder/api/extensions.py:237
 #, python-format
 msgid "Ext alias: %s"
-msgstr ""
+msgstr "Alias d'extension : %s"
 
 #: cinder/api/extensions.py:238
 #, python-format
 msgid "Ext description: %s"
-msgstr ""
+msgstr "Description d'extension : %s"
 
 #: cinder/api/extensions.py:240
 #, python-format
 msgid "Ext namespace: %s"
-msgstr ""
+msgstr "Espace de nom d'extension : %s"
 
 #: cinder/api/extensions.py:241
 #, python-format
 msgid "Ext updated: %s"
-msgstr ""
+msgstr "Extension mise à jour : %s"
 
 #: cinder/api/extensions.py:243
 #, python-format
 msgid "Exception loading extension: %s"
-msgstr ""
+msgstr "Exception lors du chargement de l'extension : %s"
 
 #: cinder/api/extensions.py:257
 #, python-format
 msgid "Loading extension %s"
-msgstr ""
+msgstr "Chargement de l'extension %s"
 
 #: cinder/api/extensions.py:263
 #, python-format
 msgid "Calling extension factory %s"
-msgstr ""
+msgstr "Appel de fabriques d'extension %s"
 
 #: cinder/api/extensions.py:277
 #, python-format
 msgid "osapi_volume_extension is set to deprecated path: %s"
-msgstr ""
+msgstr "osapi_volume_extension est défini au chemin obsolète : %s"
 
 #: cinder/api/extensions.py:279
 #, python-format
@@ -1039,21 +1057,23 @@ msgid ""
 "Please set your flag or cinder.conf settings for osapi_volume_extension "
 "to: %s"
 msgstr ""
+"Définissez votre indicateur ou vos paramètres cinder.conf pour "
+"osapi_volume_extension sur : %s"
 
 #: cinder/api/extensions.py:288
 #, python-format
 msgid "Failed to load extension %(ext_factory)s: %(exc)s"
-msgstr ""
+msgstr "Echec du chargement de l'extension %(ext_factory)s : %(exc)s"
 
 #: cinder/api/extensions.py:357
 #, python-format
 msgid "Failed to load extension %(classpath)s: %(exc)s"
-msgstr ""
+msgstr "Echec du chargement de l'extension %(classpath)s : %(exc)s"
 
 #: cinder/api/extensions.py:382
 #, python-format
 msgid "Failed to load extension %(ext_name)s: %(exc)s"
-msgstr ""
+msgstr "Echec du chargement de l'extension %(ext_name)s : %(exc)s"
 
 #: cinder/api/sizelimit.py:25
 msgid ""
@@ -1063,66 +1083,70 @@ msgstr ""
 
 #: cinder/api/xmlutil.py:266
 msgid "element is not a child"
-msgstr ""
+msgstr "l'élément n'est pas un enfant"
 
 #: cinder/api/xmlutil.py:463
 msgid "root element selecting a list"
-msgstr ""
+msgstr "élément racine sélectionnant une liste"
 
 #: cinder/api/xmlutil.py:786
 #, python-format
 msgid "Template tree mismatch; adding slave %(slavetag)s to master %(mastertag)s"
 msgstr ""
+"Discordance d'arborescence de modèles ; ajout de l'esclave %(slavetag)s "
+"au maître %(mastertag)s"
 
 #: cinder/api/xmlutil.py:907
 msgid "subclasses must implement construct()!"
-msgstr ""
+msgstr "les sous-classes doivent implémenter construct()!"
 
 #: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
-msgstr ""
+msgstr "Mise à jour de %(resource)s '%(id)s' avec '%(update)r'"
 
 #: cinder/api/contrib/backups.py:161
 #, python-format
 msgid "show called for member %s"
-msgstr ""
+msgstr "afficher appelé pour le membre %s"
 
 #: cinder/api/contrib/backups.py:173
-#, fuzzy, python-format
+#, python-format
 msgid "delete called for member %s"
-msgstr "Clef secrète changée pour l'utilisateur %s"
+msgstr "supprimer appelé pour le membre %s"
 
 #: cinder/api/contrib/backups.py:176
 #, python-format
 msgid "Delete backup with id: %s"
-msgstr ""
+msgstr "Supprimer la sauvegarde avec l'ID : %s"
 
 #: cinder/api/contrib/backups.py:218
 #, python-format
 msgid "Creating new backup %s"
-msgstr ""
+msgstr "Création d'une nouvelle sauvegarde %s"
 
 #: cinder/api/contrib/backups.py:228 cinder/api/contrib/backups.py:260
 #: cinder/api/contrib/volume_transfer.py:157
 #: cinder/api/contrib/volume_transfer.py:193
 msgid "Incorrect request body format"
-msgstr ""
+msgstr "Format de corps de demande incorrect"
 
 #: cinder/api/contrib/backups.py:234
 #, python-format
 msgid "Creating backup of volume %(volume_id)s in container %(container)s"
 msgstr ""
+"Création d'une nouvelle sauvegarde du volume %(volume_id)s dans le "
+"conteneur %(container)s"
 
 #: cinder/api/contrib/backups.py:257
 #, python-format
 msgid "Restoring backup %(backup_id)s (%(body)s)"
-msgstr ""
+msgstr "Restauration de la sauvegarde %(backup_id)s (%(body)s)"
 
 #: cinder/api/contrib/backups.py:267
 #, python-format
 msgid "Restoring backup %(backup_id)s to volume %(volume_id)s"
-msgstr ""
+msgstr "Restauration de la sauvegarde %(backup_id)s au volume %(volume_id)s"
 
 #: cinder/api/contrib/backups.py:300
 #, python-format
@@ -1155,39 +1179,39 @@ msgstr ""
 
 #: cinder/api/contrib/extended_snapshot_attributes.py:60
 msgid "Snapshot not found."
-msgstr ""
+msgstr "Instantané introuvable."
 
 #: cinder/api/contrib/hosts.py:86 cinder/api/openstack/wsgi.py:237
 msgid "cannot understand XML"
-msgstr ""
+msgstr "impossible de comprendre XML"
 
 #: cinder/api/contrib/hosts.py:136
 #, python-format
 msgid "Host '%s' could not be found."
-msgstr ""
+msgstr "L'hôte '%s' est introuvable."
 
 #: cinder/api/contrib/hosts.py:165
 #, python-format
 msgid "Invalid status: '%s'"
-msgstr ""
+msgstr "Statut non valide : '%s'"
 
 #: cinder/api/contrib/hosts.py:168
 #, python-format
 msgid "Invalid update setting: '%s'"
-msgstr ""
+msgstr "Paramètre de mise à jour non valide : '%s'"
 
 #: cinder/api/contrib/hosts.py:180
 #, python-format
 msgid "Setting host %(host)s to %(state)s."
-msgstr ""
+msgstr "Définition de l'hôte %(host)s sur %(state)s."
 
 #: cinder/api/contrib/hosts.py:206
 msgid "Describe-resource is admin only functionality"
-msgstr ""
+msgstr "Describe-resource est une fonctionnalité admin uniquement"
 
 #: cinder/api/contrib/hosts.py:214
 msgid "Host not found"
-msgstr ""
+msgstr "Hôte introuvable"
 
 #: cinder/api/contrib/qos_specs_manage.py:110
 msgid "Please specify a name for QoS specs."
@@ -1224,7 +1248,7 @@ msgstr ""
 
 #: cinder/api/contrib/quotas.py:68
 msgid "Quota limit must be -1 or greater."
-msgstr ""
+msgstr "La limite de quota doit être égale à -1 ou une valeur supérieure."
 
 #: cinder/api/contrib/quotas.py:105
 msgid "Missing required element quota_set in request body."
@@ -1237,7 +1261,7 @@ msgstr ""
 
 #: cinder/api/contrib/scheduler_hints.py:36
 msgid "Malformed scheduler_hints attribute"
-msgstr ""
+msgstr "Format incorrect de l'attribut scheduler_hints"
 
 #: cinder/api/contrib/services.py:91
 msgid ""
@@ -1271,19 +1295,19 @@ msgstr ""
 
 #: cinder/api/contrib/types_extra_specs.py:101
 msgid "Request body empty"
-msgstr ""
+msgstr "Le corps de la demande est vide"
 
 #: cinder/api/contrib/types_extra_specs.py:105
 #: cinder/api/v1/snapshot_metadata.py:75 cinder/api/v1/volume_metadata.py:75
 #: cinder/api/v2/snapshot_metadata.py:75 cinder/api/v2/volume_metadata.py:74
 msgid "Request body and URI mismatch"
-msgstr ""
+msgstr "Corps et URI de demande discordants"
 
 #: cinder/api/contrib/types_extra_specs.py:108
 #: cinder/api/v1/snapshot_metadata.py:79 cinder/api/v1/volume_metadata.py:79
 #: cinder/api/v2/snapshot_metadata.py:79 cinder/api/v2/volume_metadata.py:78
 msgid "Request body contains too many items"
-msgstr ""
+msgstr "Le corps de la demande contient un trop grand nombre d'éléments"
 
 #: cinder/api/contrib/types_extra_specs.py:152
 msgid ""
@@ -1322,7 +1346,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_actions.py:230
 msgid "No image_name was specified in request."
-msgstr ""
+msgstr "image_name non défini dans la demande."
 
 #: cinder/api/contrib/volume_actions.py:238
 msgid "Bad value for 'force' parameter."
@@ -1332,26 +1356,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1377,14 +1413,14 @@ msgid "Listing volume transfers"
 msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:147
-#, fuzzy, python-format
+#, python-format
 msgid "Creating new volume transfer %s"
-msgstr "Création d'un volume de %s Go"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:162
-#, fuzzy, python-format
+#, python-format
 msgid "Creating transfer of volume %s"
-msgstr "Tentative de suppression d'une console non existente %(console_id)s."
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:183
 #, python-format
@@ -1392,9 +1428,9 @@ msgid "Accepting volume transfer %s"
 msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:196
-#, fuzzy, python-format
+#, python-format
 msgid "Accepting transfer %s"
-msgstr "Création d'un volume de %s Go"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:217
 #, python-format
@@ -1457,7 +1493,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1467,7 +1503,7 @@ msgstr ""
 
 #: cinder/api/middleware/auth.py:112
 msgid "Invalid service catalog json."
-msgstr ""
+msgstr "json de catalogue de service non valide."
 
 #: cinder/api/middleware/fault.py:44
 #, python-format
@@ -1477,7 +1513,7 @@ msgstr "Erreur interceptée : %s"
 #: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:978
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
-msgstr ""
+msgstr "%(url)s retourné avec HTTP %(status)d"
 
 #: cinder/api/middleware/fault.py:69
 #, python-format
@@ -1487,16 +1523,16 @@ msgstr ""
 #: cinder/api/middleware/sizelimit.py:55 cinder/api/middleware/sizelimit.py:64
 #: cinder/api/middleware/sizelimit.py:78
 msgid "Request is too large."
-msgstr ""
+msgstr "La demande est trop grande."
 
 #: cinder/api/openstack/__init__.py:69
 msgid "Must specify an ExtensionManager class"
-msgstr ""
+msgstr "Vous devez définir une classe ExtensionManager"
 
 #: cinder/api/openstack/__init__.py:80
 #, python-format
 msgid "Extended resource: %s"
-msgstr ""
+msgstr "Ressource étendue : %s"
 
 #: cinder/api/openstack/__init__.py:104
 #, python-format
@@ -1504,11 +1540,13 @@ msgid ""
 "Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
 "resource"
 msgstr ""
+"Extension %(ext_name)s : impossible d'étendre la ressource %(collection)s"
+" : aucune ressource"
 
 #: cinder/api/openstack/__init__.py:110
 #, python-format
 msgid "Extension %(ext_name)s extending resource: %(collection)s"
-msgstr ""
+msgstr "Extension %(ext_name)s ; extension de la ressource : %(collection)s"
 
 #: cinder/api/openstack/__init__.py:126
 msgid ""
@@ -1524,43 +1562,43 @@ msgstr ""
 
 #: cinder/api/openstack/wsgi.py:212 cinder/api/openstack/wsgi.py:628
 msgid "cannot understand JSON"
-msgstr ""
+msgstr "impossible de comprendre JSON"
 
 #: cinder/api/openstack/wsgi.py:633
 msgid "too many body keys"
-msgstr ""
+msgstr "trop de clés de corps"
 
 #: cinder/api/openstack/wsgi.py:671
 #, python-format
 msgid "Exception handling resource: %s"
-msgstr ""
+msgstr "Exception lors du traitement de la ressource : %s"
 
 #: cinder/api/openstack/wsgi.py:676
 #, python-format
 msgid "Fault thrown: %s"
-msgstr ""
+msgstr "Erreur générée : %s"
 
 #: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "HTTP exception thrown: %s"
-msgstr ""
+msgstr "Exception HTTP générée : %s"
 
 #: cinder/api/openstack/wsgi.py:787
 msgid "Empty body provided in request"
-msgstr ""
+msgstr "Corps vide fourni dans la demande"
 
 #: cinder/api/openstack/wsgi.py:793
 msgid "Unrecognized Content-Type provided in request"
-msgstr ""
+msgstr "Type de contenu non reconnu fourni dans la demande"
 
 #: cinder/api/openstack/wsgi.py:797
 msgid "No Content-Type provided in request"
-msgstr ""
+msgstr "Aucun type de contenu fourni dans la demande"
 
 #: cinder/api/openstack/wsgi.py:908
 #, python-format
 msgid "There is no such action: %s"
-msgstr ""
+msgstr "Aucune action de ce type : %s"
 
 #: cinder/api/openstack/wsgi.py:911 cinder/api/openstack/wsgi.py:924
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
@@ -1572,20 +1610,20 @@ msgstr ""
 #: cinder/api/v2/volume_metadata.py:52 cinder/api/v2/volume_metadata.py:70
 #: cinder/api/v2/volume_metadata.py:95 cinder/api/v2/volume_metadata.py:120
 msgid "Malformed request body"
-msgstr ""
+msgstr "Format de corps de demande incorrect"
 
 #: cinder/api/openstack/wsgi.py:921
 msgid "Unsupported Content-Type"
-msgstr ""
+msgstr "Type de contenu non pris en charge"
 
 #: cinder/api/openstack/wsgi.py:933
 msgid "Malformed request url"
-msgstr ""
+msgstr "Format d'URL de demande incorrect"
 
 #: cinder/api/openstack/wsgi.py:981
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
-msgstr ""
+msgstr "%(url)s a retourné une erreur : %(e)s."
 
 #: cinder/api/openstack/volume/__init__.py:25
 msgid ""
@@ -1605,18 +1643,19 @@ msgid ""
 "Only %(value)s %(verb)s request(s) can be made to %(uri)s every "
 "%(unit_string)s."
 msgstr ""
+"Seules les demandes %(value)s %(verb)s peuvent être envoyées à %(uri)s "
+"toutes les %(unit_string)s."
 
 #: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
-msgstr ""
+msgstr "Cette demande était limitée par la fréquence."
 
 #: cinder/api/v1/snapshot_metadata.py:37 cinder/api/v1/snapshot_metadata.py:117
 #: cinder/api/v1/snapshot_metadata.py:156 cinder/api/v2/snapshot_metadata.py:37
 #: cinder/api/v2/snapshot_metadata.py:117
 #: cinder/api/v2/snapshot_metadata.py:156
-#, fuzzy
 msgid "snapshot does not exist"
-msgstr "instance %s: création d'un instantané (snapshot)"
+msgstr "L'instantané n'existe pas"
 
 #: cinder/api/v1/snapshot_metadata.py:139
 #: cinder/api/v1/snapshot_metadata.py:149 cinder/api/v1/volume_metadata.py:139
@@ -1624,12 +1663,12 @@ msgstr "instance %s: création d'un instantané (snapshot)"
 #: cinder/api/v2/snapshot_metadata.py:149 cinder/api/v2/volume_metadata.py:138
 #: cinder/api/v2/volume_metadata.py:148
 msgid "Metadata item was not found"
-msgstr ""
+msgstr "Elément de métadonnées introuvable"
 
 #: cinder/api/v1/snapshots.py:119 cinder/api/v2/snapshots.py:120
 #, python-format
 msgid "Delete snapshot with id: %s"
-msgstr ""
+msgstr "Supprimer l'instantané avec l'ID : %s"
 
 #: cinder/api/v1/snapshots.py:173 cinder/api/v2/snapshots.py:184
 msgid "'volume_id' must be specified"
@@ -1638,34 +1677,33 @@ msgstr ""
 #: cinder/api/v1/snapshots.py:182 cinder/api/v2/snapshots.py:193
 #, python-format
 msgid "Create snapshot from volume %s"
-msgstr ""
+msgstr "Créer un instantané depuis le volume %s"
 
 #: cinder/api/v1/snapshots.py:186 cinder/api/v2/snapshots.py:202
 #, python-format
 msgid "Invalid value '%s' for force. "
-msgstr ""
+msgstr "Valeur non valide '%s' pour forcer. "
 
 #: cinder/api/v1/volume_metadata.py:37 cinder/api/v1/volume_metadata.py:117
 #: cinder/api/v1/volume_metadata.py:156 cinder/api/v2/volume_metadata.py:36
 #: cinder/api/v2/volume_metadata.py:116 cinder/api/v2/volume_metadata.py:155
-#, fuzzy
 msgid "volume does not exist"
-msgstr "Le groupe de volume %s n'existe pas"
+msgstr "Le volume n'existe pas"
 
 #: cinder/api/v1/volumes.py:114
 #, python-format
 msgid "vol=%s"
-msgstr ""
+msgstr "vol = %s"
 
 #: cinder/api/v1/volumes.py:293 cinder/api/v2/volumes.py:181
 #, python-format
 msgid "Delete volume with id: %s"
-msgstr ""
+msgstr "Supprimer le volume avec l'ID : %s"
 
 #: cinder/api/v1/volumes.py:347 cinder/api/v1/volumes.py:351
 #: cinder/api/v2/volumes.py:251 cinder/api/v2/volumes.py:255
 msgid "Invalid imageRef provided."
-msgstr ""
+msgstr "imageRef fournie non valide."
 
 #: cinder/api/v1/volumes.py:391 cinder/api/v2/volumes.py:308
 #, python-format
@@ -1685,7 +1723,7 @@ msgstr "Création d'un volume de %s Go"
 #: cinder/api/v1/volumes.py:504
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
-msgstr ""
+msgstr "Retrait des options '%(bad_options)s' de la requête"
 
 #: cinder/api/v2/snapshots.py:111 cinder/api/v2/snapshots.py:126
 #: cinder/api/v2/snapshots.py:267
@@ -1705,53 +1743,55 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
-msgstr ""
+msgstr "Retrait des options '%s' de la requête"
 
 #: cinder/backup/api.py:66
-#, fuzzy
 msgid "Backup status must be available or error"
-msgstr "Le status du volume doit être disponible"
+msgstr "L'état de sauvegarde doit être Disponible ou Erreur"
 
-#: cinder/backup/api.py:115
-#, fuzzy
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
-msgstr "Le status du volume doit être disponible"
+msgstr "Le volume à sauvegarder doit être disponible"
 
-#: cinder/backup/api.py:150
-#, fuzzy
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
-msgstr "Le status du volume doit être disponible"
+msgstr "L'état de sauvegarde doit disponible"
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
-msgstr ""
+msgstr "La sauvegarde à restaurer a une taille non valide"
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
+"Création du volume de %(size)s Go pour restaurer la sauvegarde "
+"%(backup_id)s"
 
-#: cinder/backup/api.py:180
-#, fuzzy
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
-msgstr "Le status du volume doit être disponible"
+msgstr "Le volume à restaurer doit être disponible"
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
+"La taille du volume %(volume_size)d est insuffisante pour restaurer la "
+"sauvegarde d'une taille de %(size)d."
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
+"Ecrasement du volume %(volume_id)s avec restauration de la sauvegarde "
+"%(backup_id)s"
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2033,7 +2073,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2098,7 +2138,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2109,243 +2149,302 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:463
+#, python-format
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:474
+#, python-format
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:492
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Pipe1 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:506
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Pipe2 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
+#, python-format
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:702
 #, python-format
-msgid "Creating base image='%s'"
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
 #, python-format
 msgid "unsupported compression algorithm: %s"
-msgstr ""
+msgstr "algorithme de compression non pris en charge : %s"
 
 #: cinder/backup/drivers/swift.py:122
 #, python-format
@@ -2356,16 +2455,18 @@ msgstr ""
 #, python-format
 msgid "_create_container started, container: %(container)s,backup: %(backup_id)s"
 msgstr ""
+"_create_container started, conteneur : %(container)s, sauvegarde : "
+"%(backup_id)s"
 
 #: cinder/backup/drivers/swift.py:159
 #, python-format
 msgid "_generate_swift_object_name_prefix: %s"
-msgstr ""
+msgstr "_generate_swift_object_name_prefix : %s"
 
 #: cinder/backup/drivers/swift.py:168
 #, python-format
 msgid "generated object list: %s"
-msgstr ""
+msgstr "liste d'objets générée : %s"
 
 #: cinder/backup/drivers/swift.py:179
 #, python-format
@@ -2373,6 +2474,8 @@ msgid ""
 "_write_metadata started, container name: %(container)s, metadata "
 "filename: %(filename)s"
 msgstr ""
+"_write_metadata started, nom de conteneur : %(container)s, nom du fichier"
+" de métadonnées : %(filename)s"
 
 #: cinder/backup/drivers/swift.py:197
 #, python-format
@@ -2381,10 +2484,13 @@ msgid ""
 "[%(etag)s] is not the same as MD5 of metadata file sent to swift "
 "[%(md5)s]"
 msgstr ""
+"erreur lors de l'écriture du fichier de métadonnées à Swift, MD5 du "
+"fichier de métadonnées dans Swift [%(etag)s] est différent de MD5 du "
+"fichier de métadonnées envoyé à Swift [%(md5)s]"
 
 #: cinder/backup/drivers/swift.py:202
 msgid "_write_metadata finished"
-msgstr ""
+msgstr "_write_metadata terminé"
 
 #: cinder/backup/drivers/swift.py:207
 #, python-format
@@ -2392,16 +2498,18 @@ msgid ""
 "_read_metadata started, container name: %(container)s, metadata filename:"
 " %(filename)s"
 msgstr ""
+"_read_metadata started, nom du conteneur : %(container)s, nom du fichier "
+"de métadonnées : %(filename)s"
 
 #: cinder/backup/drivers/swift.py:212
 #, python-format
 msgid "_read_metadata finished (%s)"
-msgstr ""
+msgstr "_read_metadata terminé (%s)"
 
 #: cinder/backup/drivers/swift.py:222
-#, fuzzy, python-format
+#, python-format
 msgid "volume size %d is invalid."
-msgstr "La requête est invalide."
+msgstr "taille du volume %d non valide."
 
 #: cinder/backup/drivers/swift.py:236
 #, python-format
@@ -2410,10 +2518,13 @@ msgid ""
 "%(volume_size_bytes)d, swift object names prefix %(object_prefix)s, "
 "availability zone: %(availability_zone)s"
 msgstr ""
+"démarrage de la sauvegarde du volume : %(volume_id)s vers Swift, taille "
+"du volume : %(volume_size_bytes)d, préfixe des noms d'objet Swift "
+"%(object_prefix)s, zone de disponibilité : %(availability_zone)s"
 
 #: cinder/backup/drivers/swift.py:260
 msgid "reading chunk of data from volume"
-msgstr ""
+msgstr "lecture du bloc de données depuis le volume"
 
 #: cinder/backup/drivers/swift.py:267
 #, python-format
@@ -2421,24 +2532,26 @@ msgid ""
 "compressed %(data_size_bytes)d bytes of data to %(comp_size_bytes)d bytes"
 " using %(algorithm)s"
 msgstr ""
+"%(data_size_bytes)d octets de données compressés en %(comp_size_bytes)d "
+"octets avec %(algorithm)s"
 
 #: cinder/backup/drivers/swift.py:276
 msgid "not compressing data"
-msgstr ""
+msgstr "non compression des données"
 
 #: cinder/backup/drivers/swift.py:280
 msgid "About to put_object"
-msgstr ""
+msgstr "Opération put_object dans peu"
 
 #: cinder/backup/drivers/swift.py:286
 #, python-format
 msgid "swift MD5 for %(object_name)s: %(etag)s"
-msgstr ""
+msgstr "Swift MD5 pour %(object_name)s : %(etag)s"
 
 #: cinder/backup/drivers/swift.py:290
 #, python-format
 msgid "backup MD5 for %(object_name)s: %(md5)s"
-msgstr ""
+msgstr "sauvegarde MD5 pour %(object_name)s : %(md5)s"
 
 #: cinder/backup/drivers/swift.py:293
 #, python-format
@@ -2446,15 +2559,17 @@ msgid ""
 "error writing object to swift, MD5 of object in swift %(etag)s is not the"
 " same as MD5 of object sent to swift %(md5)s"
 msgstr ""
+"erreur lors de l'écriture de l'objet à Swift, MD5 de l'objet dans swift "
+"%(etag)s est différent de MD5 de l'objet envoyé à swift %(md5)s"
 
 #: cinder/backup/drivers/swift.py:301
 msgid "Calling eventlet.sleep(0)"
-msgstr ""
+msgstr "Appel de eventlet.sleep(0)"
 
 #: cinder/backup/drivers/swift.py:319
 #, python-format
 msgid "backup %s finished."
-msgstr ""
+msgstr "sauvegarde %s terminée."
 
 #: cinder/backup/drivers/swift.py:352
 #, python-format
@@ -2464,18 +2579,20 @@ msgstr ""
 #: cinder/backup/drivers/swift.py:362
 #, python-format
 msgid "v1 swift volume backup restore of %s started"
-msgstr ""
+msgstr "Restauration de sauvegarde du volume Swift v1 %s démarrée"
 
 #: cinder/backup/drivers/swift.py:367
 #, python-format
 msgid "metadata_object_names = %s"
-msgstr ""
+msgstr "metadata_object_names = %s"
 
 #: cinder/backup/drivers/swift.py:373
 msgid ""
 "restore_backup aborted, actual swift object list in swift does not match "
 "object list stored in metadata"
 msgstr ""
+"restore_backup annulé, la liste d'objets Swift actuelle dans Swift est "
+"différente de la liste d'objets stockée dans les métadonnées"
 
 #: cinder/backup/drivers/swift.py:379
 #, python-format
@@ -2483,16 +2600,19 @@ msgid ""
 "restoring object from swift. backup: %(backup_id)s, container: "
 "%(container)s, swift object name: %(object_name)s, volume: %(volume_id)s"
 msgstr ""
+"restauration d'objet depuis Swift. Sauvegarde : %(backup_id)s, conteneur "
+": %(container)s, nom d'objet Swift : %(object_name)s, volume : "
+"%(volume_id)s"
 
 #: cinder/backup/drivers/swift.py:395
 #, python-format
 msgid "decompressing data using %s algorithm"
-msgstr ""
+msgstr "décompression des données avec l'algorithme %s "
 
 #: cinder/backup/drivers/swift.py:418
 #, python-format
 msgid "v1 swift volume backup restore of %s finished"
-msgstr ""
+msgstr "Restauration de sauvegarde du volume Swift v1 %s terminée"
 
 #: cinder/backup/drivers/swift.py:426
 #, python-format
@@ -2500,40 +2620,51 @@ msgid ""
 "starting restore of backup %(object_prefix)s from swift container: "
 "%(container)s, to volume %(volume_id)s, backup: %(backup_id)s"
 msgstr ""
+"démarrage de la restauration de sauvegarde %(object_prefix)s depuis le "
+"conteneur Swift : %(container)s, au volume %(volume_id)s, sauvegarde : "
+"%(backup_id)s"
 
 #: cinder/backup/drivers/swift.py:440
 #, python-format
 msgid "Restoring swift backup version %s"
-msgstr ""
+msgstr "Restauration de la version de sauvegarde Swift %s"
 
 #: cinder/backup/drivers/swift.py:445
 #, python-format
 msgid "No support to restore swift backup version %s"
 msgstr ""
+"Aucune prise en charge pour la restauration de la version de sauvegarde "
+"Swift %s"
 
 #: cinder/backup/drivers/swift.py:461
 #, python-format
 msgid "restore %(backup_id)s to %(volume_id)s finished."
-msgstr ""
+msgstr "restauration de %(backup_id)s à %(volume_id)s terminée."
 
 #: cinder/backup/drivers/swift.py:475
 msgid "swift error while listing objects, continuing with delete"
 msgstr ""
+"Erreur Swift error lors de la création de la liste d'objets, poursuivre "
+"avec la suppression"
 
 #: cinder/backup/drivers/swift.py:484
 #, python-format
 msgid "swift error while deleting object %s, continuing with delete"
 msgstr ""
+"Erreur Swift lors de la suppression de l'objet %s, poursuivre la "
+"suppression"
 
 #: cinder/backup/drivers/swift.py:487
 #, python-format
 msgid "deleted swift object: %(swift_object_name)s in container: %(container)s"
 msgstr ""
+"objet Swift supprimé : %(swift_object_name)s dans le conteneur : "
+"%(container)s"
 
 #: cinder/backup/drivers/swift.py:497
 #, python-format
 msgid "delete %s finished"
-msgstr ""
+msgstr "suppression %s terminée"
 
 #: cinder/backup/drivers/tsm.py:78
 #, python-format
@@ -2720,19 +2851,19 @@ msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
 #: cinder/brick/exception.py:108
-#, fuzzy, python-format
+#, 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."
+msgstr "Echec de la création de la cible ISCSI pour le volume %(volume_id)s."
 
 #: cinder/brick/exception.py:112
-#, fuzzy, python-format
+#, 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."
+msgstr "Echec de la suppression de la cible SCSI pour le volume %(volume_id)s."
 
 #: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
-msgstr ""
+msgstr "Echec de connexion de la cible iSCSI pour le volume %(volume_id)s."
 
 #: cinder/brick/exception.py:120
 #, python-format
@@ -2768,12 +2899,12 @@ msgstr ""
 
 #: cinder/brick/initiator/connector.py:609
 msgid "We are unable to locate any Fibre Channel devices"
-msgstr ""
+msgstr "Nous ne parvenons pas à localiser les unités du canal optique"
 
 #: cinder/brick/initiator/connector.py:619
 #, python-format
 msgid "Looking for Fibre Channel dev %(device)s"
-msgstr ""
+msgstr "Recherche d'unités du canal optique %(device)s"
 
 #: cinder/brick/initiator/connector.py:629
 msgid "Fibre Channel volume device not found."
@@ -2792,7 +2923,7 @@ msgstr ""
 #: cinder/brick/initiator/connector.py:658
 #, python-format
 msgid "Multipath device discovered %(device)s"
-msgstr ""
+msgstr "Unité multi-chemin découverte %(device)s"
 
 #: cinder/brick/initiator/connector.py:776
 #, python-format
@@ -2831,7 +2962,7 @@ msgstr ""
 
 #: cinder/brick/initiator/linuxfc.py:50 cinder/brick/initiator/linuxfc.py:56
 msgid "systool is not installed"
-msgstr ""
+msgstr "systool n'est pas installé"
 
 #: cinder/brick/initiator/linuxscsi.py:99
 #: cinder/brick/initiator/linuxscsi.py:107
@@ -2864,7 +2995,7 @@ msgstr ""
 #: cinder/brick/iscsi/iscsi.py:172
 #, python-format
 msgid "Creating iscsi_target for: %s"
-msgstr ""
+msgstr "Création de iscsi_target pour : %s"
 
 #: cinder/brick/iscsi/iscsi.py:179
 #, python-format
@@ -2873,10 +3004,10 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
+#, 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."
+msgstr ""
 
 #: cinder/brick/iscsi/iscsi.py:222
 #, python-format
@@ -2884,59 +3015,66 @@ msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
+"Echec de création de la cible iscsi pour l'ID de volume : %(vol_id)s. "
+"Vérifiez que votre fichier de configuration tgtd contient 'include "
+"%(volumes_dir)s/*'"
 
 #: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
-msgstr ""
+msgstr "Suppression de iscsi_target pour : %s"
 
 #: cinder/brick/iscsi/iscsi.py:256
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
+#, 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."
+msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
-msgid "valid iqn needed for show_target"
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
+msgid "valid iqn needed for show_target"
+msgstr "iqn valide requis pour show_target"
+
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
-msgstr ""
+msgstr "Suppression de iscsi_target pour le volume : %s"
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
-msgstr ""
+msgstr "Création de iscsi_target pour le volume : %s"
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:552
+#, python-format
 msgid "Removing iscsi_target: %s"
-msgstr "Redémarrage de l'instance %s"
+msgstr "Suppression de iscsi_target : %s"
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
-msgstr ""
+msgstr "Echec d'ajout de iqn d'initiateur %s à la cible"
 
 #: cinder/brick/local_dev/lvm.py:75
 msgid "Error creating Volume Group"
@@ -2967,18 +3105,18 @@ msgid "StdErr  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:82
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to locate Volume Group %s"
-msgstr "Impossible de trouver le volume %s"
+msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:157
 msgid "Error querying thin pool about data_percent"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:370
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find VG: %s"
-msgstr "Impossible de trouver SR du VDB %s"
+msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:420
 msgid ""
@@ -3058,25 +3196,25 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
 #: cinder/common/sqlalchemyutils.py:66
 #: cinder/openstack/common/db/sqlalchemy/utils.py:72
 msgid "Id not in sort_keys; is sort_keys unique?"
-msgstr ""
+msgstr "ID absent de sort_keys ; sort_keys unique ?"
 
 #: cinder/common/sqlalchemyutils.py:114
 #: cinder/openstack/common/db/sqlalchemy/utils.py:120
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
-msgstr ""
+msgstr "Sens de tri inconnu, doit être 'desc' ou 'asc'"
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3088,52 +3226,51 @@ msgstr "L'utilisation d'une requête de contexte vide est dévalué"
 #: cinder/db/sqlalchemy/api.py:192
 #, python-format
 msgid "Unrecognized read_deleted value '%s'"
-msgstr ""
+msgstr "Valeur read_deleted non reconnue '%s'"
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
-#, fuzzy
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
-msgstr "Le status du volume doit être disponible"
+msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3142,19 +3279,19 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migration.py:37
 msgid "version should be an integer"
-msgstr ""
+msgstr "la version doit être un entier"
 
 #: cinder/db/sqlalchemy/migration.py:64
 msgid "Upgrade DB using Essex release first."
-msgstr ""
+msgstr "Mettez à jour la BD en utilisant la version Essex préalablement."
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/001_cinder_init.py:240
 msgid "Exception while creating table."
-msgstr ""
+msgstr "Exception lors de la création de la table"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/001_cinder_init.py:269
 msgid "Downgrade from initial Cinder install is unsupported."
-msgstr ""
+msgstr "La rétromigration à partir de Cinder d'origine n'est pas prise en charge."
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:49
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:74
@@ -3166,7 +3303,7 @@ msgstr ""
 #: cinder/db/sqlalchemy/migrate_repo/versions/020_add_volume_admin_metadata_table.py:46
 #, python-format
 msgid "Table |%s| not created!"
-msgstr ""
+msgstr "La table |%s| n'a pas été créée."
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:127
 msgid "Dropping foreign key reservations_ibfk_1 failed."
@@ -3174,31 +3311,31 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:133
 msgid "quota_classes table not dropped"
-msgstr ""
+msgstr "la table quota_classes a été supprimée"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:140
 msgid "quota_usages table not dropped"
-msgstr ""
+msgstr "la table quota_usages n'a pas été supprimée"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:147
 msgid "reservations table not dropped"
-msgstr ""
+msgstr "la table de réservations n'a pas été supprimée"
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
-msgstr ""
+msgstr "table volume_glance_metadata non supprimée"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/008_add_backup.py:68
 msgid "backups table not dropped"
-msgstr ""
+msgstr "tables backups non supprimée"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/009_add_snapshot_metadata_table.py:58
 msgid "snapshot_metadata table not dropped"
-msgstr ""
+msgstr "table snapshot_metadata non supprimée"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/010_add_transfers_table.py:61
 msgid "transfers table not dropped"
@@ -3291,12 +3428,12 @@ msgstr ""
 
 #: cinder/image/image_utils.py:94 cinder/image/image_utils.py:199
 msgid "'qemu-img info' parsing failed."
-msgstr ""
+msgstr "Echec de l'analyse syntaxique de 'qemu-img info'."
 
 #: cinder/image/image_utils.py:101
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
-msgstr ""
+msgstr "fmt=%(fmt)s sauvegardé par : %(backing_file)s"
 
 #: cinder/image/image_utils.py:109 cinder/image/image_utils.py:192
 #, python-format
@@ -3326,7 +3463,7 @@ msgstr ""
 #: cinder/image/image_utils.py:206
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
-msgstr ""
+msgstr "fmt = %(fmt)s sauvegardé par : %(backing_file)s"
 
 #: cinder/image/image_utils.py:224
 #, python-format
@@ -3336,7 +3473,7 @@ msgstr ""
 #: cinder/image/image_utils.py:260
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
-msgstr ""
+msgstr "Converti au format %(f1)s, mais le format est maintenant %(f2)s"
 
 #: cinder/keymgr/conf_key_mgr.py:78
 msgid ""
@@ -3356,32 +3493,34 @@ msgstr ""
 #: cinder/openstack/common/eventlet_backdoor.py:140
 #, python-format
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
-msgstr ""
+msgstr "Eventlet backdoor en écoute sur le port %(port)s for process %(pid)d"
 
 #: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
-msgstr ""
+msgstr "Exception d'origine en cours de suppression : %s"
 
 #: cinder/openstack/common/excutils.py:91
 #, python-format
 msgid "Unexpected exception occurred %d time(s)... retrying."
-msgstr ""
+msgstr "Exception inattendue survenue %d fois... Nouvel essai."
 
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
-msgstr ""
+msgstr "Rechargement du fichier mis en mémoire cache %s"
 
 #: cinder/openstack/common/gettextutils.py:271
 msgid "Message objects do not support addition."
-msgstr ""
+msgstr "Les objets message ne supportent pas l'addition."
 
 #: cinder/openstack/common/gettextutils.py:280
 msgid ""
 "Message objects do not support str() because they may contain non-ascii "
 "characters. Please use unicode() or translate() instead."
 msgstr ""
+"Les objets message ne supportent pas str() parce qu'il peuvent contenir "
+"des caractères non-ascii. Utiliser unicode() ou translate() à la place."
 
 #: cinder/openstack/common/imageutils.py:75
 #, python-format
@@ -3390,96 +3529,102 @@ msgstr ""
 
 #: cinder/openstack/common/imageutils.py:104
 msgid "Snapshot list encountered but no header found!"
-msgstr ""
+msgstr "Liste d'instantanés trouvée mais aucun en-tête trouvé !"
 
 #: cinder/openstack/common/lockutils.py:102
 #, python-format
 msgid "Could not release the acquired lock `%s`"
-msgstr ""
+msgstr "Impossible de libérer le verrou acquis `%s`"
 
 #: cinder/openstack/common/lockutils.py:189
 #, python-format
 msgid "Got semaphore \"%(lock)s\" for method \"%(method)s\"..."
-msgstr ""
+msgstr "Sémaphore \"%(lock)s\" obtenu pour la méthode \"%(method)s\"..."
 
 #: cinder/openstack/common/lockutils.py:200
 #, python-format
 msgid "Attempting to grab file lock \"%(lock)s\" for method \"%(method)s\"..."
 msgstr ""
+"Tentative d'appropriation du verrou de fichier \"%(lock)s\" pour la "
+"méthode \"%(method)s\"..."
 
 #: cinder/openstack/common/lockutils.py:227
 #, python-format
 msgid "Got file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
+"Verrou de fichier \"%(lock)s\" obtenu au niveau de %(path)s pour la "
+"méthode \"%(method)s\"..."
 
 #: cinder/openstack/common/lockutils.py:235
 #, python-format
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
+"Verrou de fichier \"%(lock)s\" libéré au niveau de %(path)s pour la "
+"méthode \"%(method)s\"..."
 
-#: cinder/openstack/common/log.py:326
-#, fuzzy, python-format
+#: cinder/openstack/common/log.py:327
+#, python-format
 msgid "Deprecated: %s"
-msgstr "%s reçu"
+msgstr "Obsolète : %s"
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
-msgstr ""
+msgstr "Erreur lors du chargement de la configuration %(log_config)s: %(err_msg)s"
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
-msgstr ""
+msgstr "la fonction syslog doit correspondre à l'une des options suivantes : %s"
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
-msgstr ""
+msgstr "Appel fatal adressé à une configuration obsolète : %(msg)s"
 
 #: cinder/openstack/common/loopingcall.py:82
 #, python-format
 msgid "task run outlasted interval by %s sec"
-msgstr ""
+msgstr "durée d'exécution de la tâche supérieure à %s sec"
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
-msgstr ""
+msgstr "dans l'appel en boucle de durée fixe"
 
 #: cinder/openstack/common/loopingcall.py:129
 #, python-format
 msgid "Dynamic looping call sleeping for %.02f seconds"
-msgstr ""
+msgstr "La boucle dynamique passe en veille pour %.02f secondes"
 
 #: cinder/openstack/common/loopingcall.py:136
 msgid "in dynamic looping call"
-msgstr ""
+msgstr "dans l'appel en boucle dynamique"
 
 #: cinder/openstack/common/periodic_task.py:43
 #, python-format
 msgid "Unexpected argument for periodic task creation: %(arg)s."
-msgstr ""
+msgstr "Argument inattendu pour la création de tâche périodique : %(arg)s."
 
 #: cinder/openstack/common/periodic_task.py:134
 #, python-format
 msgid "Skipping periodic task %(task)s because its interval is negative"
-msgstr ""
+msgstr "Tâche périodique %(task)s ignorée car son intervalle est négatif"
 
 #: cinder/openstack/common/periodic_task.py:139
 #, python-format
 msgid "Skipping periodic task %(task)s because it is disabled"
-msgstr ""
+msgstr "Tâche périodique %(task)s car elle est désactivée"
 
 #: cinder/openstack/common/periodic_task.py:177
 #, python-format
 msgid "Running periodic task %(full_task_name)s"
-msgstr ""
+msgstr "Exécution de la tâche périodique %(full_task_name)s"
 
 #: cinder/openstack/common/periodic_task.py:186
 #, python-format
 msgid "Error during %(full_task_name)s: %(e)s"
-msgstr ""
+msgstr "Erreur pendant %(full_task_name)s : %(e)s"
 
 #: cinder/openstack/common/policy.py:149
 #, python-format
@@ -3487,26 +3632,28 @@ msgid ""
 "Inheritance-based rules are deprecated; use the default brain instead of "
 "%s."
 msgstr ""
+"Les règles d'héritage sont obsolètes ; utilisez le cerveau par défaut à "
+"la place de %s."
 
 #: cinder/openstack/common/policy.py:163
 #, python-format
 msgid "Failed to understand rule %(match)r"
-msgstr ""
+msgstr "Impossible de comprendre la règle %(match)r"
 
 #: cinder/openstack/common/policy.py:173
 #, python-format
 msgid "Inheritance-based rules are deprecated; update _check_%s"
-msgstr ""
+msgstr "Les règles d'héritage sont obsolètes ; mettez à jour _check_%s"
 
 #: cinder/openstack/common/policy.py:180
 #, python-format
 msgid "No handler for matches of kind %s"
-msgstr ""
+msgstr "Aucun gestionnaire pour les correspondances de type %s"
 
 #: cinder/openstack/common/processutils.py:127
 #, python-format
 msgid "Got unknown keyword args to utils.execute: %r"
-msgstr ""
+msgstr "Arguments de mot clé inconnus obtenus pour utils.execute : %r"
 
 #: cinder/openstack/common/processutils.py:142
 #, python-format
@@ -3523,7 +3670,7 @@ msgstr "Le résultat était %s"
 #: cinder/openstack/common/processutils.py:179
 #, python-format
 msgid "%r failed. Retrying."
-msgstr ""
+msgstr "Echec de %r. Nouvelle tentative."
 
 #: cinder/openstack/common/processutils.py:218
 #, python-format
@@ -3532,11 +3679,11 @@ msgstr "Execution de la cmd (SSH): %s"
 
 #: cinder/openstack/common/processutils.py:220
 msgid "Environment not supported over SSH"
-msgstr ""
+msgstr "Environnement non pris en charge sur SSH"
 
 #: cinder/openstack/common/processutils.py:224
 msgid "process_input not supported over SSH"
-msgstr ""
+msgstr "process_input non pris en charge sur SSH"
 
 #: cinder/openstack/common/request_utils.py:66
 #, python-format
@@ -3559,79 +3706,78 @@ msgstr ""
 #: cinder/openstack/common/service.py:269
 #, python-format
 msgid "Caught %s, exiting"
-msgstr ""
+msgstr "%s interceptée, sortie"
 
 #: cinder/openstack/common/service.py:187
 msgid "Exception during rpc cleanup."
-msgstr ""
+msgstr "Exception pendant le nettoyage rpc."
 
 #: cinder/openstack/common/service.py:238
 msgid "Parent process has died unexpectedly, exiting"
-msgstr ""
+msgstr "Processus parent arrêté de manière inattendue, sortie"
 
 #: cinder/openstack/common/service.py:275
-#, fuzzy
 msgid "Unhandled exception"
-msgstr "Exception interne : %s"
+msgstr "Exception non gérée"
 
 #: cinder/openstack/common/service.py:308
 msgid "Forking too fast, sleeping"
-msgstr ""
+msgstr "Bifurcation trop rapide, pause"
 
 #: cinder/openstack/common/service.py:327
 #, python-format
 msgid "Started child %d"
-msgstr ""
+msgstr "Enfant démarré %d"
 
 #: cinder/openstack/common/service.py:337
-#, fuzzy, python-format
+#, python-format
 msgid "Starting %d workers"
-msgstr "adresse de départ"
+msgstr "Démarrage des travailleurs %d"
 
 #: cinder/openstack/common/service.py:354
 #, python-format
 msgid "Child %(pid)d killed by signal %(sig)d"
-msgstr ""
+msgstr "Enfant %(pid)d arrêté par le signal %(sig)d"
 
 #: cinder/openstack/common/service.py:358
 #, python-format
 msgid "Child %(pid)s exited with status %(code)d"
-msgstr ""
+msgstr "Processus fils %(pid)s terminé avec le status %(code)d"
 
 #: cinder/openstack/common/service.py:362
 #, python-format
 msgid "pid %d not in child list"
-msgstr ""
+msgstr "PID %d absent de la liste d'enfants"
 
 #: cinder/openstack/common/service.py:392
 #, python-format
 msgid "Caught %s, stopping children"
-msgstr ""
+msgstr "%s interceptée, arrêt de l'enfant"
 
 #: cinder/openstack/common/service.py:410
 #, python-format
 msgid "Waiting on %d children to exit"
-msgstr ""
+msgstr "En attente %d enfants pour sortie"
 
 #: cinder/openstack/common/sslutils.py:98
 #, python-format
 msgid "Invalid SSL version : %s"
-msgstr ""
+msgstr "Version de SSL invalide : %s"
 
 #: cinder/openstack/common/strutils.py:92
 #, python-format
 msgid "Unrecognized value '%(val)s', acceptable values are: %(acceptable)s"
-msgstr ""
+msgstr "Valeur inconnue '%(val)s', les valeurs acceptées sont: %(acceptable)s"
 
 #: cinder/openstack/common/strutils.py:202
 #, python-format
 msgid "Invalid unit system: \"%s\""
-msgstr ""
+msgstr "système d'unité \"%s\" invalide "
 
 #: cinder/openstack/common/strutils.py:211
 #, python-format
 msgid "Invalid string format: %s"
-msgstr ""
+msgstr "Format de chaine de caractères non valide : %s"
 
 #: cinder/openstack/common/versionutils.py:69
 #, python-format
@@ -3649,39 +3795,41 @@ msgstr ""
 
 #: cinder/openstack/common/crypto/utils.py:29
 msgid "An unknown error occurred in crypto utils."
-msgstr ""
+msgstr "Une erreur inconnue s'est produite avec les outils crypto."
 
 #: cinder/openstack/common/crypto/utils.py:36
 #, python-format
 msgid "Block size of %(given)d is too big, max = %(maximum)d"
-msgstr ""
+msgstr "La taille du block %(given)d est trop grande. max = %(maximum)d"
 
 #: cinder/openstack/common/crypto/utils.py:45
 #, python-format
 msgid "Length of %(given)d is too long, max = %(maximum)d"
-msgstr ""
+msgstr "%(given)d est trop longue. max = %(maximum)d"
 
 #: cinder/openstack/common/db/exception.py:44
 msgid "Invalid Parameter: Unicode is not supported by the current database."
 msgstr ""
+"Paramètre non valide : Unicode n'est pas pris en charge par la base de "
+"données actuelle."
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:487
 msgid "DB exception wrapped."
-msgstr ""
+msgstr "Exception BD encapsulée."
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:538
 #, python-format
 msgid "Got mysql server has gone away: %s"
-msgstr ""
+msgstr "Message serveur mysql déconnecté reçu : %s"
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:610
 #, python-format
 msgid "SQL connection failed. %s attempts left."
-msgstr ""
+msgstr "Echec de la connexion SQL. %s tentatives restantes."
 
 #: cinder/openstack/common/db/sqlalchemy/utils.py:33
 msgid "Sort key supplied was not valid."
-msgstr ""
+msgstr "La clé de tri fournie n'était pas valide."
 
 #: cinder/openstack/common/scheduler/filters/capabilities_filter.py:54
 #, python-format
@@ -3700,7 +3848,7 @@ msgstr ""
 #: cinder/openstack/common/scheduler/filters/ignore_attempted_hosts_filter.py:52
 #, python-format
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
-msgstr ""
+msgstr "Hôte %(host)s %(pass_msg)s. Hôtes précédemment essayés : %(hosts)s"
 
 #: cinder/scheduler/driver.py:69
 msgid "Must implement host_passes_filters"
@@ -3715,9 +3863,8 @@ msgid "Must implement a fallback schedule"
 msgstr "Doit mettre en oeuvre un calendrier de retrait"
 
 #: cinder/scheduler/driver.py:82
-#, fuzzy
 msgid "Must implement schedule_create_volume"
-msgstr "Doit mettre en oeuvre un calendrier de retrait"
+msgstr "Doit implémenter schedule_create_volume"
 
 #: cinder/scheduler/filter_scheduler.py:98
 #, python-format
@@ -3738,7 +3885,7 @@ msgstr ""
 
 #: cinder/scheduler/filter_scheduler.py:156
 msgid "Invalid value for 'scheduler_max_attempts', must be >=1"
-msgstr ""
+msgstr "Valeur non valide pour 'scheduler_max_attempts', doit être >= 1"
 
 #: cinder/scheduler/filter_scheduler.py:174
 #, python-format
@@ -3746,11 +3893,15 @@ msgid ""
 "Error scheduling %(volume_id)s from last vol-service: %(last_host)s : "
 "%(exc)s"
 msgstr ""
+"Erreur de planification de %(volume_id)s depuis le dernier service de "
+"volume : %(last_host)s : %(exc)s"
 
 #: cinder/scheduler/filter_scheduler.py:207
 #, python-format
 msgid "Exceeded max scheduling attempts %(max_attempts)d for volume %(volume_id)s"
 msgstr ""
+"Tentatives de planification max %(max_attempts)d pour le volume "
+"%(volume_id)s"
 
 #: cinder/scheduler/filter_scheduler.py:259
 #, python-format
@@ -3765,19 +3916,19 @@ msgstr ""
 #: cinder/scheduler/host_manager.py:266
 #, python-format
 msgid "Ignoring %(service_name)s service update from %(host)s"
-msgstr ""
+msgstr "Mise à jour de service %(service_name)s ignorée à partir de %(host)s"
 
 #: cinder/scheduler/host_manager.py:271
 #, python-format
 msgid "Received %(service_name)s service update from %(host)s."
-msgstr ""
+msgstr "Mise à jour de service %(service_name)s reçue de %(host)s."
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3806,12 +3957,14 @@ msgstr ""
 #: cinder/scheduler/manager.py:219
 #, python-format
 msgid "Failed to schedule_%(method)s: %(ex)s"
-msgstr ""
+msgstr "Echec de schedule_%(method)s : %(ex)s"
 
 #: cinder/scheduler/scheduler_options.py:68
 #, python-format
 msgid "Could not stat scheduler options file %(filename)s: '%(e)s'"
 msgstr ""
+"Impossible d'indiquer le fichier d'options du planificateur %(filename)s "
+": '%(e)s'"
 
 #: cinder/scheduler/scheduler_options.py:78
 #, python-format
@@ -3821,6 +3974,8 @@ msgstr ""
 #: cinder/scheduler/filters/capacity_filter.py:43
 msgid "Free capacity not set: volume node info collection broken."
 msgstr ""
+"Capacité libre non définie : collecte des informations sur le noeud de "
+"volume interrompue."
 
 #: cinder/scheduler/filters/capacity_filter.py:57
 #, python-format
@@ -3828,6 +3983,8 @@ msgid ""
 "Insufficient free space for volume creation (requested / avail): "
 "%(requested)s/%(available)s"
 msgstr ""
+"Espace libre insuffisant pour la création du volume (requis / dispo.) : "
+"%(requested)s/%(available)s"
 
 #: cinder/scheduler/flows/create_volume.py:53
 msgid "No volume_id provided to populate a request_spec from"
@@ -3848,7 +4005,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr "FAUX ISCSI: %s"
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3860,29 +4017,31 @@ msgstr ""
 #: cinder/tests/fake_driver.py:124 cinder/tests/fake_driver.py:129
 #, python-format
 msgid "LoggingVolumeDriver: %s"
-msgstr ""
+msgstr "LoggingVolumeDriver : %s"
 
 #: cinder/tests/fake_utils.py:70
 #, python-format
 msgid "Faking execution of cmd (subprocess): %s"
-msgstr ""
+msgstr "Exécution factice de la commande (subprocess) : %s"
 
 #: cinder/tests/fake_utils.py:78
 #, python-format
 msgid "Faked command matched %s"
-msgstr ""
+msgstr "La commande factice correspondait à %s"
 
 #: cinder/tests/fake_utils.py:94
 #, python-format
 msgid "Faked command raised an exception %s"
-msgstr ""
+msgstr "La commande factice a généré une exception %s"
 
 #: cinder/tests/fake_utils.py:97
 #, python-format
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
+"La réponse à la commande factice est stdout = '%(stdout)s' stderr = "
+"'%(stderr)s'"
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3892,7 +4051,7 @@ msgstr ""
 #: cinder/tests/test_ibm_xiv_ds8k.py:102
 #, python-format
 msgid "Volume not found for instance %(instance_id)s."
-msgstr ""
+msgstr "Volume introuvable pour l'instance %(instance_id)s."
 
 #: cinder/tests/test_misc.py:58
 #, python-format
@@ -3900,6 +4059,8 @@ msgid ""
 "The following migrations are missing a downgrade:\n"
 "\t%s"
 msgstr ""
+"Une rétromigration manque pour les migrations suivantes :\n"
+"\t%s"
 
 #: cinder/tests/test_netapp.py:1327
 msgid "Error not a TypeError."
@@ -3914,50 +4075,55 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
 #: cinder/tests/test_storwize_svc.py:252
 #, python-format
 msgid "unrecognized argument %s"
-msgstr ""
+msgstr "argument non reconnu %s"
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
-msgstr ""
+msgstr "Exécutez la commande CLI : %s"
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
 " stdout: %(stdout)s\n"
 " stderr: %(stderr)s"
 msgstr ""
+"Sortie CLI :\n"
+" stdout : %(stdout)s\n"
+" stderr : %(stderr)s"
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
 " stdout: %(out)s\n"
 " stderr: %(err)s"
 msgstr ""
+"Sortie exception CLI :\n"
+" stdout : %(out)s\n"
+" stderr : %(err)s"
 
 #: cinder/tests/test_volume_types.py:60
 #, python-format
 msgid "Given data: %s"
-msgstr ""
+msgstr "Données communiquées : %s"
 
 #: cinder/tests/test_volume_types.py:61
 #, python-format
 msgid "Result data: %s"
-msgstr ""
+msgstr "Données de résultat : %s"
 
-#: cinder/tests/api/contrib/test_backups.py:737
-#, fuzzy
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
-msgstr "Snapshot invalide"
+msgstr "Entrée incorrecte"
 
 #: cinder/tests/brick/test_brick_remotefs.py:99
 msgid "Unexpected call to _execute."
@@ -3968,9 +4134,9 @@ msgid "mount failed."
 msgstr ""
 
 #: cinder/tests/integrated/test_login.py:29
-#, fuzzy, python-format
+#, python-format
 msgid "volume: %s"
-msgstr "Dé-montage du volume %s"
+msgstr "volume : %s"
 
 #: cinder/tests/integrated/api/client.py:34
 #, python-format
@@ -3979,47 +4145,50 @@ msgid ""
 "Status Code: %(_status)s\n"
 "Body: %(_body)s"
 msgstr ""
+"%(message)s\n"
+"Code de statut : %(_status)s\n"
+"Corps : %(_body)s"
 
 #: cinder/tests/integrated/api/client.py:44
 msgid "Authentication error"
-msgstr ""
+msgstr "Erreur d'authentification"
 
 #: cinder/tests/integrated/api/client.py:52
 msgid "Authorization error"
-msgstr ""
+msgstr "Erreur d'autorisation"
 
 #: cinder/tests/integrated/api/client.py:60
 msgid "Item not found"
-msgstr ""
+msgstr "Élément introuvable"
 
 #: cinder/tests/integrated/api/client.py:97
 #, python-format
 msgid "Doing %(method)s on %(relative_url)s"
-msgstr ""
+msgstr "Exécution de %(method)s sur %(relative_url)s"
 
 #: cinder/tests/integrated/api/client.py:100
 #, python-format
 msgid "Body: %s"
-msgstr ""
+msgstr "Corps : %s"
 
 #: cinder/tests/integrated/api/client.py:124
 #, python-format
 msgid "%(auth_uri)s => code %(http_status)s"
-msgstr ""
+msgstr "%(auth_uri)s => code %(http_status)s"
 
 #: cinder/tests/integrated/api/client.py:147
 #, python-format
 msgid "%(relative_uri)s => code %(http_status)s"
-msgstr ""
+msgstr "%(relative_uri)s => code %(http_status)s"
 
 #: cinder/tests/integrated/api/client.py:158
 msgid "Unexpected status code"
-msgstr ""
+msgstr "Code de statut inattendu"
 
 #: cinder/tests/integrated/api/client.py:165
 #, python-format
 msgid "Decoding JSON: %s"
-msgstr ""
+msgstr "Décodage de JSON : %s"
 
 #: cinder/tests/zonemanager/test_brcd_fc_zone_driver.py:124
 #, python-format
@@ -4057,12 +4226,12 @@ msgstr ""
 
 #: cinder/transfer/api.py:102 cinder/volume/api.py:350
 msgid "status must be available"
-msgstr ""
+msgstr "l'état doit être disponible"
 
 #: cinder/transfer/api.py:119
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to create transfer record for %s"
-msgstr "Impossible de récupérer les méta-donnérs pour l'IP : %s"
+msgstr ""
 
 #: cinder/transfer/api.py:136
 #, python-format
@@ -4075,6 +4244,8 @@ msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG volume "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
+"Quota dépassé pour %(s_pid)s, tentative de création du volume %(s_size)sG"
+" (%(d_consumed)dG sur %(d_quota)dG déjà consommés)"
 
 #: cinder/transfer/api.py:182
 #, python-format
@@ -4109,7 +4280,7 @@ msgstr ""
 
 #: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
-msgstr ""
+msgstr "Echec de la mise à jour du quota pour la suppression de volume"
 
 #: cinder/volume/api.py:228
 #, python-format
@@ -4123,26 +4294,25 @@ msgstr ""
 #: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
-msgstr ""
+msgstr "Le volume dispose toujours %d instantanés dépendants"
 
 #: cinder/volume/api.py:293 cinder/volume/api.py:333
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
-msgstr ""
+msgstr "Recherche par : %s"
 
 #: cinder/volume/api.py:353
 msgid "already attached"
-msgstr ""
+msgstr "déjà attaché"
 
 #: cinder/volume/api.py:360
 msgid "status must be in-use to detach"
 msgstr ""
 
 #: cinder/volume/api.py:371
-#, fuzzy
 msgid "Volume status must be available to reserve"
-msgstr "Le status du volume doit être disponible"
+msgstr "L'état du volume doit être disponible pour réserver"
 
 #: cinder/volume/api.py:447
 msgid "Snapshot cannot be created while volume is migrating"
@@ -4150,7 +4320,7 @@ msgstr ""
 
 #: cinder/volume/api.py:451
 msgid "must be available"
-msgstr ""
+msgstr "doit être disponible"
 
 #: cinder/volume/api.py:473
 #, python-format
@@ -4158,6 +4328,8 @@ msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
+"Quota dépassé pour %(s_pid)s, tentative de création de l'instantané de "
+"%(s_size)sG (%(d_consumed)dG sur %(d_quota)dG déjà consommés)"
 
 #: cinder/volume/api.py:485
 #, python-format
@@ -4165,32 +4337,34 @@ msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
+"Quota dépassé pour %(s_pid)s, tentative de création de l'instantané "
+"(%(d_consumed)d instantanés déjà consommés)"
 
 #: cinder/volume/api.py:536
-#, fuzzy
 msgid "Volume Snapshot status must be available or error"
-msgstr "Le status du volume doit être disponible"
+msgstr "L'état d'instantané de volume doit être Disponible ou Erreur"
 
 #: cinder/volume/api.py:564 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
-msgstr ""
+msgstr "Propriété de métadonnées à blanc"
 
 #: cinder/volume/api.py:568
 msgid "Metadata property key greater than 255 characters"
-msgstr ""
+msgstr "Taille de la clé de propriété de métadonnées supérieure à 255 caractères"
 
 #: cinder/volume/api.py:572
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
+"Taille de la valeur de propriété de métadonnées supérieure à 255 "
+"caractères"
 
 #: cinder/volume/api.py:703 cinder/volume/api.py:777
-#, fuzzy
 msgid "Volume status must be available/in-use."
-msgstr "Le status du volume doit être disponible"
+msgstr "L'état de volume doit être Disponible/En cours d'utilisation."
 
 #: cinder/volume/api.py:706
 msgid "Volume status is in-use."
-msgstr ""
+msgstr "L'état de volume est En cours d'utilisation."
 
 #: cinder/volume/api.py:735
 msgid "Volume status must be available to extend."
@@ -4218,66 +4392,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4304,27 +4478,27 @@ msgstr ""
 #: cinder/volume/driver.py:335
 #, python-format
 msgid "copy_image_to_volume %s."
-msgstr ""
+msgstr "copy_image_to_volume %s."
 
 #: cinder/volume/driver.py:352
 #, python-format
 msgid "copy_volume_to_image %s."
-msgstr ""
+msgstr "copy_volume_to_image %s."
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4339,18 +4513,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr "volume %s: suppression de l'exportation"
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4373,9 +4547,9 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
-msgstr ""
+msgstr "provider_location ISCSI non stocké. Utilisation de la reconnaissance"
 
 #: cinder/volume/driver.py:652
 #, python-format
@@ -4388,27 +4562,27 @@ msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
 #: cinder/volume/driver.py:701
-#, fuzzy, python-format
+#, python-format
 msgid "Could not find iSCSI export for volume %s"
-msgstr "Imposible de trouver une exportation iSCSI pour le volume %s"
+msgstr "Exportation iSCSI trouvée pour le volume %s"
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
-msgstr ""
+msgstr "Reconnaissance ISCSI : %s trouvé"
 
 #: cinder/volume/driver.py:802
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4416,8 +4590,15 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
+msgstr "Le pilote doit implémenter initialize_connection"
+
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
 msgstr ""
 
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
@@ -4425,6 +4606,8 @@ msgstr ""
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
+"remove_export ignoré. Aucune cible iscsi mise à disposition pour le "
+"volume : %s"
 
 #: cinder/volume/iscsi.py:80
 #, python-format
@@ -4432,21 +4615,23 @@ msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
+"Ignorer remove_export. Aucun iscsi_target actuellement exporté pour le "
+"volume : %s"
 
 #: cinder/volume/iscsi.py:100
 msgid "Detected inconsistency in provider_location id"
-msgstr ""
+msgstr "Incohérence détectée dans l'ID provider_location"
 
 #: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:572
 #: cinder/volume/drivers/huawei/rest_common.py:1225
 #, python-format
 msgid "%s"
-msgstr ""
+msgstr "%s"
 
 #: cinder/volume/iscsi.py:184
 #, python-format
 msgid "Symbolic link %s not found"
-msgstr ""
+msgstr "Lien symbolique %s introuvable"
 
 #: cinder/volume/iscsi.py:251
 #, python-format
@@ -4457,289 +4642,286 @@ msgstr ""
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
+"Ignorer ensure_export. Aucune mise à disposition de iscsi_target pour le "
+"volume : %s"
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
+"Le chemin du pilote %s est obsolète, mettez à jour votre configuration "
+"vers un nouveau chemin."
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr "Ré-exportation de %s volumes"
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr "volume %s : exportation évitée"
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
-msgstr ""
+msgstr "Reprise des opérations de suppression en cours"
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
-msgstr ""
+msgstr "Reprise de la suppression de volume : %s"
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr "volume %s: suppression"
 
-#: cinder/volume/manager.py:390
-#, fuzzy
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
-msgstr "Le volume n'est pas local à ce noeud"
+msgstr "le volume n'est pas local sur ce noeud"
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
-msgstr ""
+msgstr "Echec de la mise à jour des utilisations pour la suppression du volume"
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr "volume %s: supprimé avec succès"
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
-msgstr ""
+msgstr "instantané %s : création en cours"
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
-msgstr ""
+msgstr "instantané %s : création effectuée avec succès"
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
-msgstr ""
+msgstr "instantané %s : suppression en cours"
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
+"Echec de la mise à jour des utilisations pour la suppression de "
+"l'instantané"
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
-msgstr ""
+msgstr "instantané %s : suppression effectuée avec succès"
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
-msgstr ""
+msgstr "joint par une autre instance"
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
-#, fuzzy, python-format
+#: cinder/volume/manager.py:686
+#, 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"
+msgstr "Volume %(volume_id)s correctement téléchargé vers l'image (%(image_id)s)"
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
-msgstr ""
+msgstr "Mise à jour de l'état du volume"
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
-msgstr ""
+msgstr "Notification {%s} reçue"
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4755,13 +4937,13 @@ msgstr ""
 #: cinder/volume/volume_types.py:43
 #, python-format
 msgid "DB error: %s"
-msgstr ""
+msgstr "Erreur de BD : %s"
 
 #: cinder/volume/qos_specs.py:123 cinder/volume/qos_specs.py:140
 #: cinder/volume/qos_specs.py:272 cinder/volume/volume_types.py:52
 #: cinder/volume/volume_types.py:99
 msgid "id cannot be None"
-msgstr ""
+msgstr "l'ID ne peut pas être None"
 
 #: cinder/volume/qos_specs.py:156
 #, python-format
@@ -4792,19 +4974,19 @@ msgstr ""
 
 #: cinder/volume/qos_specs.py:284 cinder/volume/volume_types.py:111
 msgid "name cannot be None"
-msgstr ""
+msgstr "le nom ne peut pas être None"
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
-msgstr ""
+msgstr "Réalisation d'une suppression sécurisée sur le volume : %s"
 
 #: cinder/volume/volume_types.py:130
 #, python-format
@@ -4812,12 +4994,14 @@ msgid ""
 "Default volume type is not found, please check default_volume_type "
 "config: %s"
 msgstr ""
+"Type de volume par défaut introuvable, contrôlez la configuration de "
+"default_volume_type : %s"
 
 #: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:284
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
-#, fuzzy, python-format
+#, python-format
 msgid "Creating clone of volume: %s"
-msgstr "Création d'un volume de %s Go"
+msgstr "Création d'un clone du volume : %s"
 
 #: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
@@ -4927,11 +5111,11 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
-#, fuzzy, python-format
+#, python-format
 msgid "Error running SSH command: %s"
-msgstr "Erreur imprévue lors de l'éxecution de la commande"
+msgstr "Erreur lors de l'exécution de la commande SSH : %s"
 
 #: cinder/volume/drivers/eqlx.py:282
 #, python-format
@@ -5007,219 +5191,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
-msgstr ""
+msgstr "Aucun fichier de configuration Gluster n'est configuré (%s)"
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
-msgstr ""
+msgstr "Le fichier de configuration Gluster dans %(config)s n'existe pas"
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
-msgstr ""
+msgstr "mount.glusterfs n'est pas installé"
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
-#, fuzzy, python-format
+#, python-format
 msgid "casted to %s"
-msgstr "Nested renvoi %s"
+msgstr "transtypé sur %s"
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
-msgstr ""
+msgstr "Aucun provider_location n'est spécifié pour le volume %s, ignorer"
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
-msgstr ""
+msgstr "Exception lors du montage %s"
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5241,7 +5425,7 @@ msgstr ""
 #: cinder/volume/drivers/lvm.py:246
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
-msgstr ""
+msgstr "instantané : %s introuvable, ignorer les opérations de suppression"
 
 #: cinder/volume/drivers/lvm.py:347
 #, python-format
@@ -5284,19 +5468,19 @@ msgid " but size is now %d"
 msgstr ""
 
 #: cinder/volume/drivers/nfs.py:380
-#, fuzzy, python-format
+#, python-format
 msgid "%s is already mounted"
-msgstr "le groupe %s existe déjà"
+msgstr "%s est déjà monté"
 
 #: cinder/volume/drivers/nfs.py:432
 #, python-format
 msgid "There's no NFS config file configured (%s)"
-msgstr ""
+msgstr "Aucun fichier de configuration NFS n'est configuré (%s)"
 
 #: cinder/volume/drivers/nfs.py:437
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
-msgstr ""
+msgstr "Fichier de configuration NFS dans %(config)s n'existe pas"
 
 #: cinder/volume/drivers/nfs.py:442
 #, python-format
@@ -5328,176 +5512,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:212
+#, python-format
 msgid "error opening rbd image %s"
-msgstr "Erreur au démarrage xvp : %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
-#, fuzzy
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
-msgstr "Connexion à libvirt: %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
-msgstr ""
+msgstr "erreur lors de l'actualisation des statistiques de volume"
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:703
+#, python-format
 msgid "connection data: %s"
-msgstr "Connexion à libvirt: %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
-msgstr ""
+msgstr "Non stocké dans rbd"
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
-msgstr ""
+msgstr "Composants vides"
 
-#: cinder/volume/drivers/rbd.py:718
-#, fuzzy
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
-msgstr "Snapshot invalide"
+msgstr "N'est pas un instantané rbd"
 
-#: cinder/volume/drivers/rbd.py:730
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:731
+#, python-format
 msgid "not cloneable: %s"
-msgstr "réponse %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
-msgstr ""
+msgstr "%s est dans un cluster ceph différent"
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:754
+#, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
-msgstr "Impossible de trouver le volume %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5505,25 +5687,27 @@ msgstr ""
 
 #: cinder/volume/drivers/scality.py:67
 msgid "Value required for 'scality_sofs_config'"
-msgstr ""
+msgstr "Valeur requise pour 'scality_sofs_config'"
 
 #: cinder/volume/drivers/scality.py:78
 #, python-format
 msgid "Cannot access 'scality_sofs_config': %s"
-msgstr ""
+msgstr "Impossible d'accéder à 'scality_sofs_config' : %s"
 
 #: cinder/volume/drivers/scality.py:84
 msgid "Cannot execute /sbin/mount.sofs"
-msgstr ""
+msgstr "Impossible d'exécuter /sbin/mount.sofs"
 
 #: cinder/volume/drivers/scality.py:105
 msgid "Cannot mount Scality SOFS, check syslog for errors"
 msgstr ""
+"Impossible de monter Scality SOFS, consultez le fichier syslog pour voir "
+"les erreurs"
 
 #: cinder/volume/drivers/scality.py:139
 #, python-format
 msgid "Cannot find volume dir for Scality SOFS at '%s'"
-msgstr ""
+msgstr "Rép. volume introuvable pour Scality SOFS à '%s'"
 
 #: cinder/volume/drivers/sheepdog.py:59
 #, python-format
@@ -5537,7 +5721,7 @@ msgstr "Sheepdog n'est pas actif"
 #: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
-msgstr ""
+msgstr "Charge utile de l'appel de l'API SolidFire : %s"
 
 #: cinder/volume/drivers/solidfire.py:149
 #, python-format
@@ -5566,54 +5750,55 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
-msgstr ""
+msgstr "L'appel de json.loads() a généré une exception : %s"
 
 #: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
-msgstr ""
+msgstr "Résultats de l'appel de l'API SolidFire : %s"
 
 #: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
-msgstr ""
+msgstr "Opération de clonage effectuée : %s"
 
 #: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
+"En attente de l'opération en attente avant d'effectuer un nouvel "
+"instantané : %s"
 
 #: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
-msgstr ""
+msgstr "Détection de xDBVersionMismatch, tentative %s sur 5"
 
 #: cinder/volume/drivers/solidfire.py:200
 #: cinder/volume/drivers/solidfire.py:269
 #: cinder/volume/drivers/solidfire.py:364
-#, fuzzy, python-format
+#, python-format
 msgid "API response: %s"
-msgstr "réponse %s"
+msgstr "Réponse de l'API : %s"
 
 #: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
-msgstr ""
+msgstr "Compte solidfire trouvé : %s"
 
 #: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
-msgstr ""
+msgstr "Le compte solidfire : %s n'existe pas, créez-le..."
 
 #: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
-msgstr ""
+msgstr "Echec d'extraction de l'ID SolidFire du volume : %s dans get_by_account!"
 
 #: 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"
+msgstr "Echec d'obtention de la mise à jour du modèle depuis le clone"
 
 #: cinder/volume/drivers/solidfire.py:408
 #, python-format
@@ -5623,7 +5808,7 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
-msgstr ""
+msgstr "Plusieurs prédéfinitions valides ont été détectées, à l'aide de %s"
 
 #: cinder/volume/drivers/solidfire.py:458
 #, python-format
@@ -5633,26 +5818,26 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
-msgstr ""
+msgstr "ID SolidFire du volume %(sfid)s mappé vers l'ID cinder %(uuid)s."
 
 #: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
-msgstr ""
+msgstr "Volume %s introuvable dans le cluster SF."
 
 #: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
-msgstr ""
+msgstr "Détection de %(count)s volumes mappés vers l'ID : %(uuid)s."
 
 #: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
-msgstr ""
+msgstr "Entrée de SolidFire delete_volume..."
 
 #: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
-msgstr ""
+msgstr "Compte de l'ID volume %s introuvable dans le cluster SolidFire !"
 
 #: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
@@ -5665,23 +5850,23 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
-msgstr ""
+msgstr "ID volume %s introuvable dans le cluster SolidFire !"
 
 #: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
-msgstr ""
+msgstr "Paramétrage de SolidFire delete_volume"
 
 #: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
-msgstr ""
+msgstr "Exécution de SolidFire ensure_export..."
 
 #: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
-msgstr ""
+msgstr "Exécution de SolidFire create_export..."
 
 #: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
@@ -5693,31 +5878,30 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
-msgstr ""
+msgstr "Mise à jour des infos de statut du cluster"
 
 #: cinder/volume/drivers/solidfire.py:671
-#, fuzzy
 msgid "Failed to get updated stats"
-msgstr "Échec de la suspension de l'instance"
+msgstr "Echec d'obtention des statistiques mises à jour"
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
 #: cinder/volume/drivers/zadara.py:236
 #, python-format
 msgid "Sending %(method)s to %(url)s. Body \"%(body)s\""
-msgstr ""
+msgstr "Envoi de %(method)s vers %(url)s. Corps \"%(body)s\""
 
 #: cinder/volume/drivers/zadara.py:260
 #, python-format
 msgid "Operation completed. %(data)s"
-msgstr ""
+msgstr "Opération terminée. %(data)s"
 
 #: cinder/volume/drivers/zadara.py:357
 #, python-format
@@ -5727,7 +5911,7 @@ msgstr ""
 #: cinder/volume/drivers/zadara.py:408 cinder/volume/drivers/zadara.py:531
 #, python-format
 msgid "Volume %(name)s could not be found. It might be already deleted"
-msgstr ""
+msgstr "Volume %(name)s introuvable. Il a peut-être déjà été supprimé"
 
 #: cinder/volume/drivers/zadara.py:438
 #, python-format
@@ -5768,7 +5952,7 @@ msgstr ""
 #: cinder/volume/drivers/zadara.py:614
 #, python-format
 msgid "Attach properties: %(properties)s"
-msgstr ""
+msgstr "Propriétés jointes : %(properties)s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:125
 #, python-format
@@ -5776,22 +5960,22 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr "Imposible de trouver une exportation iSCSI pour le volume %s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
-#, fuzzy, python-format
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
+#, python-format
 msgid "Cannot find device number for volume %s"
-msgstr "Imposible de trouver une exportation iSCSI pour le volume %s"
+msgstr "Nombre d'unités introuvable pour le volume %s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
-#, fuzzy, python-format
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
+#, python-format
 msgid "Found iSCSI endpoint: %s"
-msgstr "\"Non trouvé\" remonté : %s"
+msgstr "Noeud final iSCSI trouvé : %s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:209
 #, python-format
@@ -5808,21 +5992,23 @@ msgid ""
 "Module PyWBEM not installed.  Install PyWBEM using the python-pywbem "
 "package."
 msgstr ""
+"Module PyWBEM non installé. Installez PyWBEM à l'aide du package python-"
+"pywbem."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:82
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:125
 msgid "Entering create_volume."
-msgstr ""
+msgstr "Saisie de create_volume."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:86
-#, fuzzy, python-format
+#, python-format
 msgid "Create Volume: %(volume)s  Size: %(size)lu"
-msgstr "volume %(vol_name)s: cŕeation d'un volume logique de %(vol_size)sG"
+msgstr "Création du volume : %(volume)s  Taille : %(size)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:94
 #, python-format
 msgid "Create Volume: %(volume)s  Storage type: %(storage_type)s"
-msgstr ""
+msgstr "Création du volume : %(volume)s  Type de stockage : %(storage_type)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:101
 #, python-format
@@ -5830,6 +6016,8 @@ msgid ""
 "Create Volume: %(volume)s  Pool: %(pool)s  Storage System: "
 "%(storage_system)s"
 msgstr ""
+"Création du volume : %(volume)s  Pool : %(pool)s  Système de stockage : "
+"%(storage_system)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:110
 #, python-format
@@ -5837,6 +6025,8 @@ msgid ""
 "Error Create Volume: %(volumename)s. Storage Configuration Service not "
 "found for pool %(storage_type)s."
 msgstr ""
+"Erreur de création du volume : %(volumename)s. Service de configuration "
+"du stockage introuvable pour le pool %(storage_type)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:120
 #, python-format
@@ -5849,7 +6039,7 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_smis_common.py:136
 #, python-format
 msgid "Create Volume: %(volumename)s  Return code: %(rc)lu"
-msgstr ""
+msgstr "Création du volume : %(volumename)s  Code retour : %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:143
 #, python-format
@@ -5857,6 +6047,8 @@ msgid ""
 "Error Create Volume: %(volumename)s.  Return code: %(rc)lu.  Error: "
 "%(error)s"
 msgstr ""
+"Erreur de création du volume : %(volumename)s.  Code retour : %(rc)lu.  "
+"Erreur : %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:164
 #, python-format
@@ -5868,7 +6060,7 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_smis_common.py:176
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:348
 msgid "Entering create_volume_from_snapshot."
-msgstr ""
+msgstr "Saisie de create_volume_from_snapshot."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:181
 #, python-format
@@ -5876,6 +6068,8 @@ msgid ""
 "Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s"
 msgstr ""
+"Création du volume depuis l'instantané : Volume : %(volumename)s  "
+"Instantané : %(snapshotname)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:191
 #, python-format
@@ -5884,6 +6078,9 @@ msgid ""
 "%(snapshotname)s  Snapshot Instance: %(snapshotinstance)s  Storage "
 "System: %(storage_system)s."
 msgstr ""
+"Création du volume depuis l'instantané : Volume : %(volumename)s  "
+"Instantané : %(snapshotname)s  Instance d'instantané : "
+"%(snapshotinstance)s  Système de stockage : %(storage_system)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:201
 #, python-format
@@ -5891,6 +6088,9 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s. Create Volume from Snapshot is NOT supported on VMAX."
 msgstr ""
+"Erreur de création du volume depuis l'instantané : Volume : "
+"%(volumename)s  Instantané : %(snapshotname)s. La création du volume "
+"depuis l'instantané n'est PAS prise en  charge sur VMAX."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:212
 #, python-format
@@ -5899,6 +6099,9 @@ msgid ""
 "%(snapshotname)s. Cannot find Replication Service to create volume from "
 "snapshot."
 msgstr ""
+"Erreur de création du volume depuis l'instantané : Volume : "
+"%(volumename)s  Instantané : %(snapshotname)s. Service de réplication "
+"introuvable pour créer le volume depuis l'instantané."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:221
 #, python-format
@@ -5908,6 +6111,10 @@ msgid ""
 "%(service)s  ElementName: %(elementname)s  SyncType: 8  SourceElement: "
 "%(sourceelement)s"
 msgstr ""
+"Création du volume depuis l'instantané : Volume : %(volumename)s  "
+"Instantané : %(snapshotname)s  Méthode : CreateElementReplica  Service de"
+" réplication : %(service)s  Nom d'élément : %(elementname)s  Type de sync"
+" : 8  Elément source : %(sourceelement)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:242
 #, python-format
@@ -5915,6 +6122,9 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  "
 "Snapshot:%(snapshotname)s.  Return code: %(rc)lu.Error: %(error)s"
 msgstr ""
+"Erreur de création du volume depuis l'instantané : Volume : "
+"%(volumename)s  Instantané :%(snapshotname)s.  Code retour : %(rc)lu. "
+"Erreur : %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:268
 #, python-format
@@ -5923,6 +6133,9 @@ msgid ""
 "%(snapshotname)s.  Successfully clone volume from snapshot.  Finding the "
 "clone relationship."
 msgstr ""
+"Création du volume depuis l'instantané : Volume : %(volumename)s  "
+"Instantané : %(snapshotname)s.  Volume correctement cloné depuis "
+"l'instantané.  Recherche de la relation du clone."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:280
 #, python-format
@@ -5932,6 +6145,10 @@ msgid ""
 "ModifyReplicaSynchronization ReplicationService: %(service)s  Operation: "
 "8  Synchronization: %(sync_name)s"
 msgstr ""
+"Création du volume depuis l'instantané : Volume : %(volumename)s  "
+"Instantané : %(snapshotname)s.  Supprimez la relation du clone. Méthode :"
+" ModifyReplicaSynchronization Service de réplication : %(service)s  "
+"Opération : 8  Synchronisation : %(sync_name)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:296
 #, python-format
@@ -5939,6 +6156,8 @@ msgid ""
 "Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu"
 msgstr ""
+"Création du volume depuis l'instantané : Volume : %(volumename)s  "
+"Instantané : %(snapshotname)s  Code retour : %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:305
 #, python-format
@@ -5946,6 +6165,9 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s.  Return code: %(rc)lu.  Error: %(error)s"
 msgstr ""
+"Erreur de création du volume depuis l'instantané : Volume : "
+"%(volumename)s  Instantané :%(snapshotname)s.  Code retour : %(rc)lu. "
+"Erreur : %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:317
 #, python-format
@@ -5953,10 +6175,12 @@ msgid ""
 "Leaving create_volume_from_snapshot: Volume: %(volumename)s Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu."
 msgstr ""
+"Conservation de create_volume_from_snapshot : Volume : %(volumename)s "
+"Instantané : %(snapshotname)s  Code retour : %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:328
 msgid "Entering create_cloned_volume."
-msgstr ""
+msgstr "Saisie de create_cloned_volume."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:333
 #, python-format
@@ -5964,6 +6188,8 @@ msgid ""
 "Create a Clone from Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s"
 msgstr ""
+"Création d'un clone depuis le volume : Volume : %(volumename)s  Volume "
+"source : %(srcname)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:343
 #, python-format
@@ -5971,6 +6197,9 @@ msgid ""
 "Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
 "  Source Instance: %(src_instance)s  Storage System: %(storage_system)s."
 msgstr ""
+"Création d'un volume cloné : Volume : %(volumename)s  Volume source : "
+"%(srcname)s  Instance source : %(src_instance)s  Système de stockage : "
+"%(storage_system)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:353
 #, python-format
@@ -5978,6 +6207,9 @@ msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s. Cannot find Replication Service to create cloned volume."
 msgstr ""
+"Erreur de création d'un volume cloné : Volume: %(volumename)s  Volume "
+"source : %(srcname)s. Service de réplication introuvable pour créer le "
+"volume cloné."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:362
 #, python-format
@@ -5987,6 +6219,10 @@ msgid ""
 "ElementName: %(elementname)s  SyncType: 8  SourceElement: "
 "%(sourceelement)s"
 msgstr ""
+"Création d'un volume cloné : Volume:  %(volumename)s  Volume source : "
+"%(srcname)s  Méthode : CreateElementReplica  Service de réplication : "
+"%(service)s  Nom d'élément : %(elementname)s  Type de sync : 8  Elément "
+"source : %(sourceelement)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:383
 #, python-format
@@ -5994,6 +6230,8 @@ msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source "
 "Volume:%(srcname)s.  Return code: %(rc)lu.Error: %(error)s"
 msgstr ""
+"Erreur de création d'un volume cloné : Volume : %(volumename)s  Volume "
+"source :%(srcname)s.  Code retour : %(rc)lu. Erreur : %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:409
 #, python-format
@@ -6002,6 +6240,9 @@ msgid ""
 "  Successfully cloned volume from source volume.  Finding the clone "
 "relationship."
 msgstr ""
+"Création d'un volume cloné : Volume : %(volumename)s  Volume source : "
+"%(srcname)s.  Volume correctement cloné depuis le volume source.  "
+"Recherche de la relation du clone."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:421
 #, python-format
@@ -6011,6 +6252,10 @@ msgid ""
 "ReplicationService: %(service)s  Operation: 8  Synchronization: "
 "%(sync_name)s"
 msgstr ""
+"Création d'un volume cloné : Volume : %(volumename)s  Volume source : "
+"%(srcname)s.  Supprimez la relation du clone. Méthode : "
+"ModifyReplicaSynchronization Service de réplication : %(service)s  "
+"Opération : 8  Synchronisation : %(sync_name)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:437
 #, python-format
@@ -6018,6 +6263,8 @@ msgid ""
 "Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
 "  Return code: %(rc)lu"
 msgstr ""
+"Création d'un volume cloné : Volume : %(volumename)s  Volume source : "
+"%(srcname)s  Code retour : %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:446
 #, python-format
@@ -6025,6 +6272,8 @@ msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s.  Return code: %(rc)lu.  Error: %(error)s"
 msgstr ""
+"Erreur de création d'un volume cloné : Volume : %(volumename)s  Volume "
+"source :%(srcname)s.  Code retour : %(rc)lu. Erreur : %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:458
 #, python-format
@@ -6032,21 +6281,23 @@ msgid ""
 "Leaving create_cloned_volume: Volume: %(volumename)s Source Volume: "
 "%(srcname)s  Return code: %(rc)lu."
 msgstr ""
+"Conservation de create_cloned_volume : Volume : %(volumename)s Volume "
+"source : %(srcname)s  Code retour : %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:469
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:178
 msgid "Entering delete_volume."
-msgstr ""
+msgstr "Saisie de delete_volume."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:471
 #, python-format
 msgid "Delete Volume: %(volume)s"
-msgstr ""
+msgstr "Suppression du volume : %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:478
 #, python-format
 msgid "Volume %(name)s not found on the array. No volume to delete."
-msgstr ""
+msgstr "Volume %(name)s introuvable dans la matrice. Aucun volume à supprimer."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:488
 #, python-format
@@ -6054,11 +6305,13 @@ msgid ""
 "Error Delete Volume: %(volumename)s. Storage Configuration Service not "
 "found."
 msgstr ""
+"Erreur de suppression du volume : %(volumename)s. Service de "
+"configuration du stockage introuvable."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:496
 #, python-format
 msgid "Delete Volume: %(name)s  DeviceID: %(deviceid)s"
-msgstr ""
+msgstr "Suppression du volume : %(name)s  ID unité : %(deviceid)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:500
 #, python-format
@@ -6066,6 +6319,8 @@ msgid ""
 "Delete Volume: %(name)s  Method: EMCReturnToStoragePool ConfigServic: "
 "%(service)s  TheElement: %(vol_instance)s"
 msgstr ""
+"Suppression du volume : %(name)s  Méthode : EMCReturnToStoragePool "
+"Service de config : %(service)s  Elément : %(vol_instance)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:514
 #, python-format
@@ -6073,35 +6328,37 @@ msgid ""
 "Error Delete Volume: %(volumename)s.  Return code: %(rc)lu.  Error: "
 "%(error)s"
 msgstr ""
+"Erreur de suppression du volume : %(volumename)s.  Code retour : %(rc)lu."
+"  Erreur : %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:523
 #, python-format
 msgid "Leaving delete_volume: %(volumename)s  Return code: %(rc)lu"
-msgstr ""
+msgstr "Conservation de delete_volume : %(volumename)s  Code retour : %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:530
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:275
 msgid "Entering create_snapshot."
-msgstr ""
+msgstr "Saisie de create_snapshot."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:534
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:278
 #, python-format
 msgid "Create snapshot: %(snapshot)s: volume: %(volume)s"
-msgstr ""
+msgstr "Création d'un instantané : %(snapshot)s: Volume : %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:544
 #: cinder/volume/drivers/emc/emc_smis_common.py:972
 #, python-format
 msgid "Device ID: %(deviceid)s: Storage System: %(storagesystem)s"
-msgstr ""
+msgstr "ID unité : %(deviceid)s : Système de stockage : %(storagesystem)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:551
 #: cinder/volume/drivers/emc/emc_smis_common.py:553
 #: cinder/volume/drivers/emc/emc_smis_common.py:639
 #, python-format
 msgid "Cannot find Replication Service to create snapshot for volume %s."
-msgstr ""
+msgstr "Service de réplication introuvable pour créer l'instantané du volume %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:558
 #, python-format
@@ -6110,6 +6367,10 @@ msgid ""
 "Source: %(volume)s  Replication Service: %(service)s  ElementName: "
 "%(elementname)s  Sync Type: 7  SourceElement: %(sourceelement)s."
 msgstr ""
+"Création d'un instantané :  Méthode : CreateElementReplica:  Cible: "
+"%(snapshot)s  Source : %(volume)s  Service de réplication : %(service)s  "
+"Nom d'élément : %(elementname)s  Type de sync : 7  Elément source : "
+"%(sourceelement)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:574
 #, python-format
@@ -6117,6 +6378,8 @@ msgid ""
 "Create Snapshot: Volume: %(volumename)s  Snapshot: %(snapshotname)s  "
 "Return code: %(rc)lu"
 msgstr ""
+"Création d'un instantané : Volume : %(volumename)s  Instantané : "
+"%(snapshotname)s  Code retour : %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:583
 #, python-format
@@ -6131,17 +6394,19 @@ msgid ""
 "Leaving create_snapshot: Snapshot: %(snapshot)s Volume: %(volume)s  "
 "Return code: %(rc)lu."
 msgstr ""
+"Conservation de create_snapshot : Instantané : %(snapshot)s Volume : "
+"%(volume)s  Code retour : %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:613
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:302
 msgid "Entering delete_snapshot."
-msgstr ""
+msgstr "Saisie de delete_snapshot."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:617
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:306
 #, python-format
 msgid "Delete Snapshot: %(snapshot)s: volume: %(volume)s"
-msgstr ""
+msgstr "Suppression d'un instantané : %(snapshot)s : Volume : %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:623
 #, python-format
@@ -6149,6 +6414,8 @@ msgid ""
 "Delete Snapshot: %(snapshot)s: volume: %(volume)s. Finding "
 "StorageSychronization_SV_SV."
 msgstr ""
+"Suppression d'un instantané : %(snapshot)s :  Volume : %(volume)s. "
+"Recherche de StorageSychronization_SV_SV."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:631
 #, python-format
@@ -6156,6 +6423,8 @@ msgid ""
 "Snapshot: %(snapshot)s: volume: %(volume)s not found on the array. No "
 "snapshot to delete."
 msgstr ""
+"Instantané : %(snapshot)s : Volume : %(volume)s introuvable dans la "
+"matrice. Aucun instantané à supprimer."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:646
 #, python-format
@@ -6164,6 +6433,9 @@ msgid ""
 "ModifyReplicaSynchronization:  Replication Service: %(service)s  "
 "Operation: 19  Synchronization: %(sync_name)s."
 msgstr ""
+"Suppression d'un instantané : Cible : %(snapshot)s  Source : %(volume)s."
+"  Méthode : ModifyReplicaSynchronization :  Service de réplication : "
+"%(service)s  Opération : 19  Synchronisation : %(sync_name)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:662
 #, python-format
@@ -6171,6 +6443,8 @@ msgid ""
 "Delete Snapshot: Volume: %(volumename)s  Snapshot: %(snapshotname)s  "
 "Return code: %(rc)lu"
 msgstr ""
+"Suppression d'un instantané : Volume : %(volumename)s  Instantané : "
+"%(snapshotname)s  Code retour : %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:671
 #, python-format
@@ -6178,6 +6452,8 @@ msgid ""
 "Error Delete Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s. Return code: %(rc)lu. Error: %(error)s"
 msgstr ""
+"Erreur de suppression d'un instantané : Volume : %(volumename)s  "
+"Instantané : %(snapshotname)s. Code retour : %(rc)lu. Erreur : %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:696
 #: cinder/volume/drivers/emc/emc_smis_common.py:711
@@ -6205,6 +6481,8 @@ msgid ""
 "Leaving delete_snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu."
 msgstr ""
+"Conservation de delete_snapshot : Volume : %(volumename)s  Instantané : "
+"%(snapshotname)s  Code retour : %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:745
 #, python-format
@@ -6212,21 +6490,24 @@ msgid ""
 "ExposePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(lun_name)s"
 "  InitiatorPortIDs: %(initiator)s  DeviceAccesses: 2"
 msgstr ""
+"Chemins d'exposition : %(vol)s  Service de config : %(service)s  Noms "
+"d'unités logiques : %(lun_name)s  ID port initiateur : %(initiator)s  "
+"Accès unité : 2"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:760
 #, python-format
 msgid "ExposePaths parameter LunMaskingSCSIProtocolController: %(lunmasking)s"
-msgstr ""
+msgstr "Paramètre ExposePaths LunMaskingSCSIProtocolController : %(lunmasking)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:771
-#, fuzzy, python-format
+#, python-format
 msgid "Error mapping volume %s."
-msgstr "Erreur au démarrage xvp : %s"
+msgstr "Erreur de mappage du volume %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:775
-#, fuzzy, python-format
+#, python-format
 msgid "ExposePaths for volume %s completed successfully."
-msgstr "volume %s: supprimé avec succès"
+msgstr "ExposePaths correctement terminé pour le volume %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:791
 #, python-format
@@ -6234,16 +6515,18 @@ msgid ""
 "HidePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(device_id)s  "
 "LunMaskingSCSIProtocolController: %(lunmasking)s"
 msgstr ""
+"HidePaths : %(vol)s  ConfigServicie : %(service)s  LUNames : "
+"%(device_id)s  LunMaskingSCSIProtocolController : %(lunmasking)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:804
 #, python-format
 msgid "Error unmapping volume %s."
-msgstr ""
+msgstr "Erreur d'annulation du mappage du volume %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:808
-#, fuzzy, python-format
+#, python-format
 msgid "HidePaths for volume %s completed successfully."
-msgstr "volume %s: supprimé avec succès"
+msgstr "HidePaths correctement terminée pour le volume %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:821
 #, python-format
@@ -6251,16 +6534,18 @@ msgid ""
 "AddMembers: ConfigServicie: %(service)s  MaskingGroup: %(masking_group)s"
 "  Members: %(vol)s"
 msgstr ""
+"AddMembers : Service de config : %(service)s  Groupe de masquage : "
+"%(masking_group)s  Membres : %(vol)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:836
 #, python-format
 msgid "Error mapping volume %(vol)s. %(error)s"
-msgstr ""
+msgstr "Erreur de mappage du volume %(vol)s. %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:841
-#, fuzzy, python-format
+#, python-format
 msgid "AddMembers for volume %s completed successfully."
-msgstr "volume %s: supprimé avec succès"
+msgstr "AddMembers correctement terminé pour le volume %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:854
 #, python-format
@@ -6268,52 +6553,56 @@ msgid ""
 "RemoveMembers: ConfigServicie: %(service)s  MaskingGroup: "
 "%(masking_group)s  Members: %(vol)s"
 msgstr ""
+"RemoveMembers : Service de config : %(service)s  Groupe de masquage : "
+"%(masking_group)s  Membres : %(vol)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:867
 #, python-format
 msgid "Error unmapping volume %(vol)s. %(error)s"
-msgstr ""
+msgstr "Erreur d'annulation du mappage du volume %(vol)s. %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:872
-#, fuzzy, python-format
+#, python-format
 msgid "RemoveMembers for volume %s completed successfully."
-msgstr "volume %s: supprimé avec succès"
+msgstr "RemoveMembers correctement terminée pour le volume %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:878
 #, python-format
 msgid "Map volume: %(volume)s"
-msgstr ""
+msgstr "Mapper le volume : %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:887
 #: cinder/volume/drivers/emc/emc_smis_common.py:917
 #, python-format
 msgid "Cannot find Controller Configuration Service for storage system %s"
 msgstr ""
+"Service de configuration du contrôleur introuvable pour le système de "
+"stockage %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:901
 #, python-format
 msgid "Unmap volume: %(volume)s"
-msgstr ""
+msgstr "Annuler le mappage du volume : %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:907
 #, python-format
 msgid "Volume %s is not mapped. No volume to unmap."
-msgstr ""
+msgstr "Volume %s non mappé. Aucun mappage de volume à annuler."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:931
 #, python-format
 msgid "Initialize connection: %(volume)s"
-msgstr ""
+msgstr "Initialiser la connexion : %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:937
 #, python-format
 msgid "Volume %s is already mapped."
-msgstr ""
+msgstr "Volume %s déjà mappé."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:949
 #, python-format
 msgid "Terminate connection: %(volume)s"
-msgstr ""
+msgstr "Mettre fin à la connexion : %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:956
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:197
@@ -6369,16 +6658,16 @@ msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1063
 msgid "Storage type not found."
-msgstr ""
+msgstr "Type de stockage introuvable."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1079
 #, python-format
 msgid "Found Masking View: %s"
-msgstr ""
+msgstr "Vue de masquage trouvée : %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1082
 msgid "Masking View not found."
-msgstr ""
+msgstr "Vue de masquage introuvable."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1097
 #, python-format
@@ -6391,78 +6680,75 @@ msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1122
 msgid "Ecom user not found."
-msgstr ""
+msgstr "Utilisateur Ecom introuvable."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1142
 #, python-format
 msgid "Ecom IP: %(ecomIp)s Port: %(ecomPort)s"
-msgstr ""
+msgstr "IP Ecom : %(ecomIp)s Port : %(ecomPort)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1146
 msgid "Ecom server not found."
-msgstr ""
+msgstr "Serveur Ecom introuvable."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1153
-#, fuzzy
 msgid "Cannot connect to ECOM server"
-msgstr "Reconnection à la queue"
+msgstr "Connexion au serveur ECOM impossible"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1165
 #, python-format
 msgid "Found Replication Service: %s"
-msgstr ""
+msgstr "Service de réplication trouvé : %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1178
 #, python-format
 msgid "Found Storage Configuration Service: %s"
-msgstr ""
+msgstr "Service de configuration du stockage trouvé : %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1191
 #, python-format
 msgid "Found Controller Configuration Service: %s"
-msgstr ""
+msgstr "Service de configuration du contrôleur trouvé : %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1204
 #, python-format
 msgid "Found Storage Hardware ID Management Service: %s"
-msgstr ""
+msgstr "Service de gestion des ID matériel du stockage trouvé : %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1248
 #, python-format
 msgid "Pool %(storage_type)s is not found."
-msgstr ""
+msgstr "Pool %(storage_type)s introuvable."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1254
 #, python-format
 msgid "Storage system not found for pool %(storage_type)s."
-msgstr ""
+msgstr "Système de stockage introuvable pour le pool %(storage_type)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1260
 #, python-format
 msgid "Pool: %(pool)s  SystemName: %(systemname)s."
-msgstr ""
+msgstr "Pool : %(pool)s  Nom système : %(systemname)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1277
 #, python-format
 msgid "Pool name: %(poolname)s  System name: %(systemname)s."
-msgstr ""
+msgstr "Nom pool : %(poolname)s  Nom système : %(systemname)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1292
 #, python-format
 msgid "Volume %(volumename)s not found on the array."
-msgstr ""
+msgstr "Volume %(volumename)s introuvable dans la matrice."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1295
-#, fuzzy, python-format
+#, python-format
 msgid "Volume name: %(volumename)s  Volume instance: %(vol_instance)s."
-msgstr ""
-"Montage du volume %(volume_id)s sur l'instance %(instance_id)s en tant "
-"que %(device)s"
+msgstr "Nom volume : %(volumename)s  Instance volume : %(vol_instance)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1310
 #, python-format
 msgid "Source: %(volumename)s  Target: %(snapshotname)s."
-msgstr ""
+msgstr "Source : %(volumename)s  Cible : %(snapshotname)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1322
 #, python-format
@@ -6470,6 +6756,8 @@ msgid ""
 "Source: %(volumename)s  Target: %(snapshotname)s. Storage Synchronized "
 "not found. "
 msgstr ""
+"Source : %(volumename)s  Cible : %(snapshotname)s. Stockage synchronisé "
+"introuvable. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1327
 #, python-format
@@ -6477,16 +6765,18 @@ msgid ""
 "Storage system: %(storage_system)s  Storage Synchronized instance: "
 "%(sync)s."
 msgstr ""
+"Système de stockage : %(storage_system)s  Instance de stockage "
+"synchronisé : %(sync)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1353
 #, python-format
 msgid "Error finding %s."
-msgstr ""
+msgstr "Erreur lors de la recherche de %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1357
 #, python-format
 msgid "Found %(name)s: %(initiator)s."
-msgstr ""
+msgstr "Détection de %(name)s : %(initiator)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1417
 #, python-format
@@ -6494,6 +6784,8 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage system %(storage_system)s "
 "and initiator %(initiator)s is  %(ctrl)s."
 msgstr ""
+"LunMaskingSCSIProtocolController pour le système de stockage "
+"%(storage_system)s et l'initiateur %(initiator)s est %(ctrl)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1458
 #, python-format
@@ -6501,6 +6793,8 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage volume %(vol)s and initiator"
 " %(initiator)s is  %(ctrl)s."
 msgstr ""
+"LunMaskingSCSIProtocolController pour le volume de stockage %(vol)s et "
+"l'initiateur %(initiator)s est %(ctrl)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1472
 #, python-format
@@ -6508,6 +6802,8 @@ msgid ""
 "Volume %(name)s not found on the array. Cannot determine if there are "
 "volumes mapped."
 msgstr ""
+"Volume %(name)s introuvable dans la matrice. Impossible de déterminer si "
+"des volumes sont mappés."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1484
 #, python-format
@@ -6515,6 +6811,8 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage system %(storage)s and "
 "%(connector)s is %(ctrl)s."
 msgstr ""
+"LunMaskingSCSIProtocolController pour le système de stockage %(storage)s "
+"et le connecteur %(connector)s est %(ctrl)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1496
 #, python-format
@@ -6522,11 +6820,13 @@ msgid ""
 "Found %(numVolumesMapped)d volumes on storage system %(storage)s mapped "
 "to %(initiator)s."
 msgstr ""
+"Détection de %(numVolumesMapped)d volumes sur le système de stockage "
+"%(storage)s mappés vers %(initiator)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1531
 #, python-format
 msgid "Available device number on %(storage)s: %(device)s."
-msgstr ""
+msgstr "Nombre d'unités disponibles dans %(storage)s : %(device)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1556
 #, python-format
@@ -6539,26 +6839,30 @@ msgstr ""
 #, python-format
 msgid "Device number not found for volume %(volumename)s %(vol_instance)s."
 msgstr ""
+"Nombre d'unités introuvable pour le volume %(volumename)s "
+"%(vol_instance)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1597
 #, python-format
 msgid "Found device number %(device)d for volume %(volumename)s %(vol_instance)s."
 msgstr ""
+"Nombre d'unités %(device)d trouvé pour le volume %(volumename)s "
+"%(vol_instance)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1607
 #, python-format
 msgid "Device info: %(data)s."
-msgstr ""
+msgstr "Infos d'unité : %(data)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1629
 #, python-format
 msgid "Masking view: %(view)s DeviceMaskingGroup: %(masking)s."
-msgstr ""
+msgstr "Vue de masquage : %(view)s Groupe de masquage unité : %(masking)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1651
 #, python-format
 msgid "Found Storage Processor System: %s"
-msgstr ""
+msgstr "Système de processeur trouvé : %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1679
 #, python-format
@@ -6566,10 +6870,14 @@ msgid ""
 "iSCSIProtocolEndpoint for storage system %(storage_system)s and SP %(sp)s"
 " is  %(endpoint)s."
 msgstr ""
+"iSCSIProtocolEndpoint pour le système de stockage %(storage_system)s et "
+"le point de service %(sp)s est %(endpoint)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1720
 msgid "Error finding Storage Hardware ID Service."
 msgstr ""
+"Erreur lors de la recherche du service de gestion des ID matériel de "
+"stockage."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1726
 #, python-format
@@ -6577,41 +6885,45 @@ msgid ""
 "EMCGetTargetEndpoints: Service: %(service)s  Storage HardwareIDs: "
 "%(hardwareids)s."
 msgstr ""
+"EMCGetTargetEndpoints : Service : %(service)s  ID matériel de stockage : "
+"%(hardwareids)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1738
 msgid "Error finding Target WWNs."
-msgstr ""
+msgstr "Erreur lors de la recherche des WWN cible."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1748
 #, python-format
 msgid "Add target WWN: %s."
-msgstr ""
+msgstr "Ajout de WWN cible : %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1750
 #, python-format
 msgid "Target WWNs: %s."
-msgstr ""
+msgstr "WWN cible : %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1766
 #, python-format
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
-msgstr ""
+msgstr "ID matériel de stockage pour %(wwpns)s est %(foundInstances)s."
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
+"Noeud final ISCSI introuvable pour le point de service %(sp)s sur le "
+"système de stockage %(storage)s."
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
-msgstr ""
+msgstr "Propriétés ISCSI : %s"
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:77
 msgid "Pool name is not specified."
@@ -6690,11 +7002,9 @@ msgid "Failed to list %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:251
-#, fuzzy, python-format
+#, python-format
 msgid "create_export: Volume: %(volume)s  Device ID: %(device_id)s"
-msgstr ""
-"Montage du volume %(volume_id)s sur l'instance %(instance_id)s en tant "
-"que %(device)s"
+msgstr "create_export : Volume : %(volume)s  ID unité : %(device_id)s"
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:292
 #, python-format
@@ -6894,93 +7204,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
-#, fuzzy, python-format
+#: cinder/volume/drivers/hds/hds.py:251
+#, python-format
 msgid "HDP not found: %s"
-msgstr "Sheepdog n'est pas actif : %s"
+msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7068,7 +7378,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7135,7 +7445,7 @@ msgstr ""
 #: cinder/volume/drivers/huawei/rest_common.py:327
 #, python-format
 msgid "create_snapshot:snapshot name:%(snapshot)s, volume name:%(volume)s."
-msgstr ""
+msgstr "create_snapshot : nom instantané :%(snapshot)s, nom volume : %(volume)s."
 
 #: cinder/volume/drivers/huawei/rest_common.py:354
 #, python-format
@@ -7178,7 +7488,7 @@ msgstr ""
 #: cinder/volume/drivers/huawei/rest_common.py:874
 #, python-format
 msgid "terminate_connection:volume name: %(volume)s, initiator name: %(ini)s."
-msgstr ""
+msgstr "terminate_connection : nom volume : %(volume)s, nom initiateur : %(ini)s."
 
 #: cinder/volume/drivers/huawei/rest_common.py:937
 #, python-format
@@ -7237,7 +7547,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7268,12 +7578,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7306,7 +7616,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7317,111 +7627,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7429,77 +7739,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7653,97 +7963,97 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
-msgstr ""
+msgstr "%s n'est pas défini"
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:143
 msgid "enter: do_setup"
-msgstr ""
+msgstr "entrer : do_setup"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:153
 #, python-format
@@ -7756,11 +8066,11 @@ msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:214
 msgid "leave: do_setup"
-msgstr ""
+msgstr "conserver : do_setup"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:218
 msgid "enter: check_for_setup_error"
-msgstr ""
+msgstr "entrer : check_for_setup_error"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:222
 msgid "Unable to determine system name"
@@ -7775,6 +8085,8 @@ msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
+"Le mot de passe ou la clé privée SSH est requis(e) pour "
+"l'authentification : définissez l'option san_password ou san_private_key"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:246
 #, python-format
@@ -7782,15 +8094,18 @@ msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
+"Valeur non admise %d spécifiée pour l'option "
+"storwize_svc_flashcopy_timeout : les valeurs valides sont comprises entre"
+" 0 et 600"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
 msgid "leave: check_for_setup_error"
-msgstr ""
+msgstr "conserver : check_for_setup_error"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:264
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
-msgstr ""
+msgstr "ensure_export : Volume %s introuvable dans le stockage"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:283
 msgid "The connector does not contain the required information."
@@ -7799,7 +8114,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:307
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "entrer : initialize_connection: volume %(vol)s avec connecteur %(conn)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:338
 msgid "CHAP secret exists for host but CHAP is disabled"
@@ -7808,17 +8123,17 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:343
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
-msgstr ""
+msgstr "initialize_connection : Echec d'obtention des attributs pour le volume %s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:355
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
-msgstr ""
+msgstr "Nom de colonne attendu non trouvé dans lsvdisk : %s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:357
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
-msgstr ""
+msgstr "initialize_connection : Attribut de volume manquant pour le volume %s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:374
 #, python-format
@@ -7826,11 +8141,13 @@ msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
+"initialize_connection : Aucun noeud trouvé dans le groupe d'E-S %(gid)s "
+"pour le volume %(vol)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
-msgstr ""
+msgstr "initialize_connection : Aucune noeud préféré trouvé pour le volume %s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:406
 msgid ""
@@ -7838,14 +8155,23 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
+"initialize_connection : Echec de collecte des propriétés de renvoi pour "
+"le volume %(vol)s et le connecteur %(conn)s.\n"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7853,101 +8179,114 @@ msgid ""
 " connector %(conn)s\n"
 " properties: %(prop)s"
 msgstr ""
+"conserver : initialize_connection:\n"
+" volume : %(vol)s\n"
+" connecteur : %(conn)s\n"
+" propriétés : %(prop)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "entrer : terminate_connection: volume %(vol)s avec connecteur %(conn)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "conserver : terminate_connection : volume %(vol)s avec connecteur %(conn)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
+"create_volume_from_snapshot : La taille de la source et de la destination"
+" diffère."
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
+"create_cloned_volume : La taille de la source et de la destination "
+"diffère."
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7955,31 +8294,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
-msgstr ""
+msgstr "Impossible d'obtenir les données du pool depuis le stockage"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8082,26 +8428,34 @@ msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
+"Valeur non admise spécifiée pour storwize_svc_vol_rsize : définir sur un "
+"pourcentage (0-100) ou sur -1"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:388
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
+"Valeur non admise spécifiée pour storwize_svc_vol_warning : définir sur "
+"un pourcentage (0-100)"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:395
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
+"Valeur non admise spécifiée pour storwize_svc_vol_grainsize : définir sur"
+" 32, 64, 128 ou 256"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
 msgid "System does not support compression"
-msgstr ""
+msgstr "Le système ne prend pas en charge la compression"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:407
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
+"Si la compression est définie sur True, rsize doit également être définie"
+" (autre que -1)"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:413
 #, python-format
@@ -8109,6 +8463,8 @@ msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
+"Valeur non admise %(prot)s spécifiée pour "
+"storwize_svc_connection_protocol : les valeurs valides sont %(enabled)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:422
 #, python-format
@@ -8127,7 +8483,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:504
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
-msgstr ""
+msgstr "conserver : _create_vdisk : volume %s "
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:531
 #, python-format
@@ -8163,7 +8519,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:601
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
-msgstr ""
+msgstr "Vdisk %(name)s non impliqué dans le mappage %(src)s -> %(tgt)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:637
 #, python-format
@@ -8200,15 +8556,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8220,18 +8583,17 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:213
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:250
-#, fuzzy, python-format
+#, python-format
 msgid ""
 "CLI Exception output:\n"
 " command: %(cmd)s\n"
 " stdout: %(out)s\n"
 " stderr: %(err)s"
 msgstr ""
-"%(description)s\n"
-"Commande : %(cmd)s\n"
-"Valeur retournée : %(exit_code)s\n"
-"Sortie standard : %(stdout)r\n"
-"Sortie d'erreur : %(stderr)r"
+"Sortie exception CLI :\n"
+" commande : %(cmd)s\n"
+" stdout : %(out)s\n"
+" stderr : %(err)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:53
 #, python-format
@@ -8263,12 +8625,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -8340,35 +8702,41 @@ msgstr ""
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
+"Aucune propriété de métadonnées %(prop)s n'est définie pour le numéro "
+"d'unité logique %(name)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:105
-#, fuzzy, python-format
+#, python-format
 msgid "Using NetApp filer: %s"
-msgstr "Instance actives : %s"
+msgstr "Utilisation du gestionnaire de fichiers NetApp : %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:150
 msgid "Success getting LUN list from server"
 msgstr ""
+"Réussite de l'obtention de la liste des numéros d'unités logiques depuis "
+"le serveur"
 
 #: cinder/volume/drivers/netapp/iscsi.py:166
 #, python-format
 msgid "Created LUN with name %s"
-msgstr ""
+msgstr "Numéro d'unité logique créé sous le nom %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:175
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
+"Aucune entrée dans la table des numéros d'unités logiques pour le "
+"volume/l'instantané %(name)s."
 
 #: cinder/volume/drivers/netapp/iscsi.py:191
-#, fuzzy, python-format
+#, python-format
 msgid "Destroyed LUN %s"
-msgstr "Nested renvoi %s"
+msgstr "Numéro d'unité logique détruit %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:227
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
-msgstr ""
+msgstr "Numéro d'unité logique %(name)s mappé vers l'initiateur %(initiator_name)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
@@ -8378,24 +8746,24 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:238
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get LUN target details for the LUN %s"
-msgstr "Impossible de récupérer les méta-donnérs pour l'IP : %s"
+msgstr "Echec d'obtention des détails cible du numéro d'unité logique %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:249
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get target portal for the LUN %s"
-msgstr "Impossible de récupérer les méta-donnérs pour l'IP : %s"
+msgstr "Echec d'obtention du portail cible pour le numéro d'unité logique %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:252
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get target IQN for the LUN %s"
-msgstr "Impossible de récupérer les méta-donnérs pour l'IP : %s"
+msgstr "Echec d'obtention de l'IQN cible pour le numéro d'unité logique %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:290
-#, fuzzy, python-format
+#, python-format
 msgid "Snapshot %s deletion successful"
-msgstr "volume %s: supprimé avec succès"
+msgstr "Réussite de la suppression de l'instantané %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:310
 #: cinder/volume/drivers/netapp/iscsi.py:557
@@ -8409,20 +8777,26 @@ msgstr ""
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
 msgstr ""
+"Numéro d'unité logique %(name)s non mappé depuis l'initiateur "
+"%(initiator_name)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:414
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
+"Erreur lors du mappage du numéro d'unité logique. Code : %(code)s, "
+"Message : %(message)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:433
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
+"Erreur lors de l'annulation du mappage du numéro d'unité logique. Code : "
+"%(code)s, Message : %(message)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:503
 msgid "Object is not a NetApp LUN."
-msgstr ""
+msgstr "L'objet n'est pas un numéro d'unité logique NetApp."
 
 #: cinder/volume/drivers/netapp/iscsi.py:535
 #, python-format
@@ -8521,12 +8895,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:841
 #, python-format
 msgid "No iscsi service found for vserver %s"
-msgstr ""
+msgstr "Aucun service iscsi trouvé pour vserver %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1008
 #, python-format
 msgid "Cloned LUN with new name %s"
-msgstr ""
+msgstr "Numéro d'unité logique cloné avec le nouveau nom %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1012
 #, python-format
@@ -8549,9 +8923,9 @@ msgid "Api version could not be determined."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:1190
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get vol with required size for volume: %s"
-msgstr "Impossible de récupérer les méta-donnérs pour l'IP : %s"
+msgstr "Echec d'obtention du volume avec la taille requise pour le volume : %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1299
 #, python-format
@@ -8562,11 +8936,15 @@ msgstr ""
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
 msgstr ""
+"Opération de clonage terminée avec la source %(name)s et la destination "
+"%(new_name)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1446
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
 msgstr ""
+"Echec de l'opération de clonage avec la source %(name)s et la destination"
+" %(new_name)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1509
 msgid "Volume refresh job already running. Returning..."
@@ -8705,7 +9083,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:460
 #, python-format
 msgid "Converted to raw, but format is now %s"
-msgstr ""
+msgstr "Converti au format brut, mais le format est maintenant %s"
 
 #: cinder/volume/drivers/netapp/nfs.py:470
 #, python-format
@@ -8783,7 +9161,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:866
 #, python-format
 msgid "No interface found on cluster for ip %s"
-msgstr ""
+msgstr "Aucune interface trouvée dans le cluster pour l'IP %s"
 
 #: cinder/volume/drivers/netapp/nfs.py:907
 #, python-format
@@ -8928,12 +9306,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:1349
 #, python-format
 msgid "No storage path found for export path %s"
-msgstr ""
+msgstr "Aucun chemin de stockage trouvé pour le chemin d'exportation %s"
 
 #: cinder/volume/drivers/netapp/nfs.py:1359
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
-msgstr ""
+msgstr "Clonage avec la source %(src_path)s, destination %(dest_path)s"
 
 #: cinder/volume/drivers/netapp/ssc_utils.py:241
 #, python-format
@@ -9300,9 +9678,9 @@ msgid "Error deleting vol with label %s."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:105
-#, fuzzy, python-format
+#, python-format
 msgid "Volume %s does not exist in Nexenta SA"
-msgstr "Le groupe de volume %s n'existe pas"
+msgstr "Le volume %s n'existe pas dans Nexenta SA"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:151
 #, python-format
@@ -9378,10 +9756,10 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
-msgstr ""
+msgstr "Erreur de création cible ignorée \"%s\" pour garantir l'exportation"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:486
 #, python-format
@@ -9409,6 +9787,8 @@ msgid ""
 "Got error trying to destroy target group %(target_group)s, assuming it is"
 " already gone: %(exc)s"
 msgstr ""
+"Erreur obtenue lors de la tentative de destruction du groupe cible "
+"%(target_group)s, en supposant qu'il est déjà détruit : %(exc)s "
 
 #: cinder/volume/drivers/nexenta/iscsi.py:559
 #, python-format
@@ -9416,29 +9796,31 @@ msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
 "gone: %(exc)s"
 msgstr ""
+"Erreur obtenue lors de la tentative de suppression de la cible "
+"%(target)s, supposant qu'elle est déjà supprimée : %(exc)s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:83
 #, python-format
 msgid "Sending JSON data: %s"
-msgstr ""
+msgstr "Envoi des données JSON : %s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:88
 msgid "No headers in server response"
-msgstr ""
+msgstr "Aucun en-tête dans la réponse du serveur"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:89
 msgid "Bad response from server"
-msgstr ""
+msgstr "Réponse erronée du serveur"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:90
 #, python-format
 msgid "Auto switching to HTTPS connection to %s"
-msgstr ""
+msgstr "Commutation auto sur la connexion HTTPS vers %s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:96
-#, fuzzy, python-format
+#, python-format
 msgid "Got response: %s"
-msgstr "réponse %s"
+msgstr "Réponse obtenue : %s"
 
 #: cinder/volume/drivers/nexenta/nfs.py:85
 #, python-format
@@ -9501,290 +9883,304 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
-msgstr ""
+msgstr "Indiquez san_password ou san_private_key"
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
-msgstr ""
+msgstr "san_ip doit être défini"
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
-msgstr ""
+msgstr "Impossible d'analyser la sortie de vue liste : %s"
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
-msgstr ""
+msgstr "LUID non trouvé pour %(zfs_poolname)s. Sortie = %(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
-msgstr ""
+msgstr "CPG (%s) n'existe pas dans la matrice"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
+"Spécifiez une personnalité valide %(valid)s, la valeur '%(persona)s' "
+"n'est pas valide."
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
+"Spécifiez un type de mise à disposition valide %(valid)s, la valeur "
+"'%(prov)s' n'est pas valide."
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:763
-#, fuzzy, python-format
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
+#, python-format
 msgid "Volume (%s) already exists on array"
-msgstr "le groupe %s existe déjà"
+msgstr "Le volume (%s) existe déjà dans la matrice"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
-msgstr ""
+msgstr "La commande CLIQ a renvoyé %s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, python-format
 msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
 msgstr ""
+"Réponse incorrecte à la commande CLIQ %(verb)s %(cliq_args)s. Résultat = "
+"%(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, python-format
 msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
 msgstr ""
+"Erreur d'exécution de la commande CLIQ %(verb)s %(cliq_args)s. Résultat ="
+" %(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, python-format
 msgid ""
 "Unexpected number of virtual ips for cluster  %(cluster_name)s. "
 "Result=%(_xml)s"
 msgstr ""
+"Nombre inattendu d'IP virtuelles pour le cluster %(cluster_name)s. "
+"Résultat = %(_xml)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
+msgstr "Infos volume : %(volume_name)s => %(volume_attributes)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
-msgstr ""
+msgstr "local_path non pris en charge"
 
 #: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:75
 #, python-format
@@ -10176,7 +10572,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10336,7 +10732,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10456,62 +10852,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10737,7 +11133,7 @@ msgstr ""
 
 #: cinder/volume/drivers/vmware/volumeops.py:744
 msgid "Copying disk data before snapshot of the VM"
-msgstr ""
+msgstr "Copie des données de disque avant l'instantané de la machine virtuelle"
 
 #: cinder/volume/drivers/vmware/volumeops.py:754
 #, python-format
@@ -10794,9 +11190,9 @@ msgid "Filtered hubs: %s"
 msgstr ""
 
 #: cinder/volume/drivers/windows/windows.py:102
-#, fuzzy, python-format
+#, python-format
 msgid "Creating folder %s "
-msgstr "Suppression de l'utilisateur %s"
+msgstr "Création du dossier %s "
 
 #: cinder/volume/drivers/windows/windows_utils.py:47
 #, python-format
@@ -10823,7 +11219,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10831,35 +11227,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10867,42 +11268,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/gl/LC_MESSAGES/cinder.po b/cinder/locale/gl/LC_MESSAGES/cinder.po
index df6b3f507..d278b1446 100644
--- a/cinder/locale/gl/LC_MESSAGES/cinder.po
+++ b/cinder/locale/gl/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Galician translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-10-28 23:23+0000\n"
-"Last-Translator: Tom Fifield <tom@openstack.org>\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Galician "
-"(http://www.transifex.com/projects/p/openstack/language/gl/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/gl/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/he/LC_MESSAGES/cinder.po b/cinder/locale/he/LC_MESSAGES/cinder.po
index ec416bd3a..553e8be08 100644
--- a/cinder/locale/he/LC_MESSAGES/cinder.po
+++ b/cinder/locale/he/LC_MESSAGES/cinder.po
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2014-01-24 11:45+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Hebrew "
-"(http://www.transifex.com/projects/p/openstack/language/he/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/he/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/he_IL/LC_MESSAGES/cinder.po b/cinder/locale/he_IL/LC_MESSAGES/cinder.po
index 256ce1527..32eedb220 100644
--- a/cinder/locale/he_IL/LC_MESSAGES/cinder.po
+++ b/cinder/locale/he_IL/LC_MESSAGES/cinder.po
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2014-01-24 11:45+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Hebrew (Israel) "
-"(http://www.transifex.com/projects/p/openstack/language/he_IL/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/he_IL/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/hi/LC_MESSAGES/cinder.po b/cinder/locale/hi/LC_MESSAGES/cinder.po
index 414c9d843..c5c8f9b81 100644
--- a/cinder/locale/hi/LC_MESSAGES/cinder.po
+++ b/cinder/locale/hi/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Hindi translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-08-27 04:58+0000\n"
-"Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Hindi "
-"(http://www.transifex.com/projects/p/openstack/language/hi/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/hi/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/hr/LC_MESSAGES/cinder.po b/cinder/locale/hr/LC_MESSAGES/cinder.po
index 04859e9b2..4338757e1 100644
--- a/cinder/locale/hr/LC_MESSAGES/cinder.po
+++ b/cinder/locale/hr/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Croatian translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-05-29 08:13+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Croatian "
-"(http://www.transifex.com/projects/p/openstack/language/hr/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/hr/)\n"
 "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
 "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2\n"
 "MIME-Version: 1.0\n"
@@ -732,40 +732,40 @@ msgstr ""
 
 #: cinder/policy.py:30
 msgid "JSON file representing policy"
-msgstr ""
+msgstr "JSON dokument s pravilima pristupa"
 
 #: cinder/policy.py:33
 msgid "Rule checked when requested rule is not found"
-msgstr ""
+msgstr "Pretpostavljeno pravilo kad traženo pravilo nije nađeno"
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -784,17 +784,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -803,39 +803,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1328,26 +1328,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1453,7 +1465,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1699,7 +1711,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1708,40 +1720,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2023,7 +2035,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2088,7 +2100,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2099,237 +2111,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:463
+#, python-format
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:474
+#, python-format
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:492
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Pipe1 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:506
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Pipe2 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2863,7 +2934,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2885,45 +2956,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3048,11 +3123,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3066,7 +3141,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3080,49 +3155,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3173,11 +3248,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3406,22 +3481,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3432,7 +3507,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3759,12 +3834,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3835,7 +3910,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3869,7 +3944,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3901,7 +3976,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3910,12 +3985,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3923,7 +3998,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3941,7 +4016,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4201,66 +4276,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4294,20 +4369,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4322,18 +4397,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4356,7 +4431,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4376,7 +4451,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4385,13 +4460,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4399,10 +4474,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4441,285 +4523,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4774,14 +4850,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4907,7 +4983,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4987,219 +5063,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5308,174 +5384,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5642,8 +5718,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5676,12 +5752,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5752,19 +5828,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6570,18 +6646,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6865,93 +6941,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7039,7 +7115,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7208,7 +7284,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7239,12 +7315,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7277,7 +7353,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7288,111 +7364,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7400,77 +7476,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7624,90 +7700,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7809,14 +7885,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7825,100 +7908,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7926,31 +8014,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8171,15 +8266,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8229,12 +8331,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9344,7 +9446,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9467,288 +9569,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10142,7 +10248,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10302,7 +10408,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10422,62 +10528,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10789,7 +10895,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10797,35 +10903,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10833,42 +10944,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/hu/LC_MESSAGES/cinder.po b/cinder/locale/hu/LC_MESSAGES/cinder.po
index 9f5c31073..d503db73e 100644
--- a/cinder/locale/hu/LC_MESSAGES/cinder.po
+++ b/cinder/locale/hu/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Hungarian translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-05-29 08:13+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Hungarian "
-"(http://www.transifex.com/projects/p/openstack/language/hu/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/hu/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -731,40 +731,40 @@ msgstr ""
 
 #: cinder/policy.py:30
 msgid "JSON file representing policy"
-msgstr ""
+msgstr "A házirendet képviselő JSON fájl"
 
 #: cinder/policy.py:33
 msgid "Rule checked when requested rule is not found"
-msgstr ""
+msgstr "A kért szabály hiányában ellenőrzendő szabály"
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:463
+#, python-format
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:474
+#, python-format
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:492
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Pipe1 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:506
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Pipe2 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3659,7 +3734,7 @@ msgstr ""
 #: cinder/openstack/common/db/sqlalchemy/session.py:538
 #, python-format
 msgid "Got mysql server has gone away: %s"
-msgstr ""
+msgstr "A kapott MySQL szerver eltűnt: %s"
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:610
 #, python-format
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/id/LC_MESSAGES/cinder.po b/cinder/locale/id/LC_MESSAGES/cinder.po
index 18c7713c9..349e5ed65 100644
--- a/cinder/locale/id/LC_MESSAGES/cinder.po
+++ b/cinder/locale/id/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Indonesian translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-05-29 08:13+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Indonesian "
-"(http://www.transifex.com/projects/p/openstack/language/id/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/id/)\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/is_IS/LC_MESSAGES/cinder.po b/cinder/locale/is_IS/LC_MESSAGES/cinder.po
index 7ccda2d44..e1d99084c 100644
--- a/cinder/locale/is_IS/LC_MESSAGES/cinder.po
+++ b/cinder/locale/is_IS/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Icelandic (Iceland) translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-12-16 02:36+0000\n"
-"Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Icelandic (Iceland) "
-"(http://www.transifex.com/projects/p/openstack/language/is_IS/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/is_IS/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/it/LC_MESSAGES/cinder.po b/cinder/locale/it/LC_MESSAGES/cinder.po
index 1262b166e..665e38f57 100644
--- a/cinder/locale/it/LC_MESSAGES/cinder.po
+++ b/cinder/locale/it/LC_MESSAGES/cinder.po
@@ -1,16 +1,18 @@
-# Italian translation for cinder
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the cinder package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+# Italian translations for cinder.
+# Copyright (C) 2014 ORGANIZATION
+# This file is distributed under the same license as the cinder project.
 #
+# Translators:
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011
 msgid ""
 msgstr ""
-"Project-Id-Version:  cinder\n"
-"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-03-29 06:10+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"
+"Project-Id-Version:  Cinder\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
+"Language-Team: Italian "
+"(http://www.transifex.com/projects/p/cinder/language/it/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -20,12 +22,12 @@ msgstr ""
 #: cinder/context.py:63
 #, python-format
 msgid "Arguments dropped when creating context: %s"
-msgstr ""
+msgstr "Argomenti eliminati durante la creazione del contesto: %s"
 
 #: cinder/context.py:107
 #, python-format
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
-msgstr ""
+msgstr "read_deleted può essere solo 'no', 'yes' o 'only', non %r"
 
 #: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
@@ -33,12 +35,14 @@ msgstr "E' stato riscontrato un errore sconosciuto"
 
 #: cinder/exception.py:88
 msgid "Exception in string format operation"
-msgstr ""
+msgstr "Eccezione nell'operazione di formattazione della stringa"
 
 #: cinder/exception.py:107
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
+"Risposta non corretta o imprevista dall'API di backend del volume di "
+"archiviazione: %(data)s"
 
 #: cinder/exception.py:112
 #, python-format
@@ -57,7 +61,7 @@ msgstr ""
 
 #: cinder/exception.py:124
 msgid "Not authorized."
-msgstr ""
+msgstr "Non autorizzato."
 
 #: cinder/exception.py:129
 msgid "User does not have admin privileges"
@@ -66,12 +70,12 @@ msgstr "L'utente non ha i privilegi dell'amministratore"
 #: cinder/exception.py:133
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
-msgstr ""
+msgstr "La politica non consente di eseguire l'azione %(action)s."
 
 #: cinder/exception.py:137
-#, fuzzy, python-format
+#, python-format
 msgid "Not authorized for image %(image_id)s."
-msgstr "nessun metodo per il messaggio: %s"
+msgstr "Non autorizzato per l'immagine %(image_id)s."
 
 #: cinder/exception.py:141
 msgid "Volume driver not ready."
@@ -94,16 +98,15 @@ msgstr ""
 #: cinder/exception.py:159
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
-msgstr ""
+msgstr "Volume %(volume_id)s è ancora collegato, prima scollegare il volume."
 
 #: cinder/exception.py:163
 msgid "Failed to load data into json format"
-msgstr ""
+msgstr "Impossibile caricare i dati in formato json"
 
 #: cinder/exception.py:167
-#, fuzzy
 msgid "The results are invalid."
-msgstr "La richiesta non è valida."
+msgstr "I risultati non sono validi."
 
 #: cinder/exception.py:171
 #, python-format
@@ -123,7 +126,7 @@ msgstr ""
 #: cinder/exception.py:183
 #, python-format
 msgid "Invalid content type %(content_type)s."
-msgstr ""
+msgstr "Tipo di contenuto non valido%(content_type)s."
 
 #: cinder/exception.py:187
 #, python-format
@@ -133,7 +136,7 @@ msgstr ""
 #: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
-msgstr ""
+msgstr "%(err)s"
 
 #: cinder/exception.py:197
 #, python-format
@@ -147,12 +150,12 @@ msgstr ""
 
 #: cinder/exception.py:206
 msgid "Service is unavailable at this time."
-msgstr ""
+msgstr "Il servizio non è disponibile in questo momento."
 
 #: cinder/exception.py:210
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
-msgstr ""
+msgstr "L'immagine %(image_id)s non è accettabile: %(reason)s"
 
 #: cinder/exception.py:214
 #, python-format
@@ -162,21 +165,21 @@ msgstr ""
 #: cinder/exception.py:218
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
-msgstr ""
+msgstr "Era previsto un uuid ma è stato ricevuto %(uuid)s."
 
 #: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
-msgstr ""
+msgstr "Impossibile trovare la risorsa."
 
 #: cinder/exception.py:228
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
-msgstr ""
+msgstr "Impossibile trovare il volume %(volume_id)s."
 
 #: cinder/exception.py:232
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
-msgstr ""
+msgstr "Volume %(volume_id)s non contiene metadati con la chiave %(metadata_key)s."
 
 #: cinder/exception.py:237
 #, python-format
@@ -199,16 +202,18 @@ msgstr ""
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
+"L'istantanea %(snapshot_id)s non contiene metadati con la chiave "
+"%(metadata_key)s."
 
 #: cinder/exception.py:255
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
-msgstr ""
+msgstr "Impossibile trovare il tipo di volume %(volume_type_id)s."
 
 #: cinder/exception.py:259
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
-msgstr ""
+msgstr "Impossibile trovare il tipo di volume con il nome %(volume_type_name)s."
 
 #: cinder/exception.py:264
 #, python-format
@@ -216,6 +221,8 @@ msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
+"Il tipo di volume %(volume_type_id)s non contiene specifiche "
+"supplementari con la chiave %(extra_specs_key)s."
 
 #: cinder/exception.py:269
 #, python-format
@@ -227,62 +234,64 @@ msgstr ""
 #: cinder/exception.py:274
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
-msgstr ""
+msgstr "Impossibile trovare l'istantanea %(snapshot_id)s."
 
 #: cinder/exception.py:278
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
-msgstr ""
+msgstr "eliminazione del volume %(volume_name)s che contiene l'istantanea"
 
 #: cinder/exception.py:282
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
+"eliminazione dell'istantanea %(snapshot_name)s che contiene dei volume "
+"dipendenti"
 
 #: cinder/exception.py:287
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
-msgstr ""
+msgstr "Nessun id destinazione è stato trovato per il volume %(volume_id)s."
 
 #: cinder/exception.py:291
 #, python-format
 msgid "Invalid image href %(image_href)s."
-msgstr ""
+msgstr "href immagine %(image_href)s non valido."
 
 #: cinder/exception.py:295
 #, python-format
 msgid "Image %(image_id)s could not be found."
-msgstr ""
+msgstr "Impossibile trovare l'immagine %(image_id)s."
 
 #: cinder/exception.py:299
 #, python-format
 msgid "Service %(service_id)s could not be found."
-msgstr ""
+msgstr "Impossibile trovare il servizio %(service_id)s."
 
 #: cinder/exception.py:303
 #, python-format
 msgid "Host %(host)s could not be found."
-msgstr ""
+msgstr "Impossibile trovare l'host %(host)s."
 
 #: cinder/exception.py:307
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
-msgstr ""
+msgstr "Impossibile trovare il filtro Scheduler Host %(filter_name)s."
 
 #: cinder/exception.py:311
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
-msgstr ""
+msgstr "Impossibile trovare Scheduler Host Weigher %(weigher_name)s."
 
 #: cinder/exception.py:315
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
-msgstr ""
+msgstr "Impossibile trovare il binario %(binary)s nell'host %(host)s."
 
 #: cinder/exception.py:319
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
-msgstr ""
+msgstr "Scadenza prenotazione non valida %(expire)s."
 
 #: cinder/exception.py:323
 #, python-format
@@ -290,50 +299,52 @@ msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
+"La modifica renderebbe l'utilizzo inferiore a 0 per le seguenti risorse: "
+"%(unders)s"
 
 #: cinder/exception.py:328
 msgid "Quota could not be found"
-msgstr ""
+msgstr "Impossibile trovare la quota"
 
 #: cinder/exception.py:332
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
-msgstr ""
+msgstr "Risorse quota sconosciute %(unknown)s."
 
 #: cinder/exception.py:336
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
-msgstr ""
+msgstr "Impossibile trovare la quota per il progetto %(project_id)s."
 
 #: cinder/exception.py:340
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
-msgstr ""
+msgstr "Impossibile trovare la classe di quota %(class_name)s."
 
 #: cinder/exception.py:344
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
-msgstr ""
+msgstr "Impossibile trovare l'utilizzo della quota per il progetto %(project_id)s."
 
 #: cinder/exception.py:348
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
-msgstr ""
+msgstr "Impossibile trovare la prenotazione della quota %(uuid)s."
 
 #: cinder/exception.py:352
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
-msgstr ""
+msgstr "Quota superata per le risorse: %(overs)s"
 
 #: cinder/exception.py:356
 #, python-format
 msgid "File %(file_path)s could not be found."
-msgstr ""
+msgstr "Impossibile trovare il file %(file_path)s."
 
 #: cinder/exception.py:365
 #, python-format
 msgid "Volume Type %(id)s already exists."
-msgstr ""
+msgstr "Il tipo di volume %(id)s esiste già."
 
 #: cinder/exception.py:369
 #, python-format
@@ -348,27 +359,27 @@ msgstr ""
 #: cinder/exception.py:377
 #, python-format
 msgid "Malformed message body: %(reason)s"
-msgstr ""
+msgstr "Corpo del messaggio non valido: %(reason)s"
 
 #: cinder/exception.py:381
 #, python-format
 msgid "Could not find config at %(path)s"
-msgstr ""
+msgstr "Impossibile trovare la configurazione in %(path)s"
 
 #: cinder/exception.py:385
-#, fuzzy, python-format
+#, python-format
 msgid "Could not find parameter %(param)s"
-msgstr "Impossibile localizzare il volume %s"
+msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
-msgstr ""
+msgstr "Impossibile caricare l'app paste '%(name)s' in %(path)s"
 
 #: cinder/exception.py:393
 #, python-format
 msgid "No valid host was found. %(reason)s"
-msgstr ""
+msgstr "Non è stato trovato alcun host valido. %(reason)s"
 
 #: cinder/exception.py:402
 #, python-format
@@ -385,37 +396,39 @@ msgstr ""
 #: cinder/exception.py:415
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
-msgstr ""
+msgstr "Numero massimo volumi consentiti (%(allowed)d) superato"
 
 #: cinder/exception.py:419
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
-msgstr ""
+msgstr "Numero massimo di istantanee consentite (%(allowed)d) superato"
 
 #: cinder/exception.py:423
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
-msgstr ""
+msgstr "È stato rilevato più di un volume con il nome %(vol_name)s"
 
 #: cinder/exception.py:427
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
+"Impossibile creare volume_type con nome %(name)s e specifiche "
+"%(extra_specs)s"
 
 #: cinder/exception.py:432
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
-msgstr ""
+msgstr "Comando %(cmd)s sconosciuto o non supportato"
 
 #: cinder/exception.py:436
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
-msgstr ""
+msgstr "Risposta non valida per il comando %(cmd)s: %(reason)s"
 
 #: cinder/exception.py:440
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
-msgstr ""
+msgstr "Operazione non riuscita con status=%(status)s. Dump completo: %(data)s"
 
 #: cinder/exception.py:444
 #, python-format
@@ -423,6 +436,8 @@ msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
+"Impossibile aggiornare i metadati Glance, la chiave %(key)s esiste per "
+"l'id volume %(volume_id)s"
 
 #: cinder/exception.py:449
 #, python-format
@@ -450,9 +465,9 @@ msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:469
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to copy image to volume: %(reason)s"
-msgstr "Impossibile localizzare il volume %s"
+msgstr ""
 
 #: cinder/exception.py:473
 msgid "Invalid Ceph args provided for backup rbd operation"
@@ -477,7 +492,7 @@ msgstr ""
 #: cinder/exception.py:493
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
-msgstr ""
+msgstr "Impossibile trovare il backup %(backup_id)s."
 
 #: cinder/exception.py:497
 msgid "Failed to identify volume backend."
@@ -486,7 +501,7 @@ msgstr ""
 #: cinder/exception.py:501
 #, python-format
 msgid "Invalid backup: %(reason)s"
-msgstr ""
+msgstr "Backup non valido: %(reason)s"
 
 #: cinder/exception.py:505
 #, python-format
@@ -606,37 +621,37 @@ msgid "Zadara Cinder Driver exception."
 msgstr ""
 
 #: cinder/exception.py:611
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to create server object for initiator %(name)s"
-msgstr "Impossible creare il VDI su SR %(sr_ref)s per l'istanza %(instance_name)s"
+msgstr "Impossibile creare l'oggetto server per l'iniziatore %(name)s"
 
 #: cinder/exception.py:615
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
-msgstr ""
+msgstr "Impossibile trovare l'oggetto server per l'iniziatore %(name)s"
 
 #: cinder/exception.py:619
 msgid "Unable to find any active VPSA controller"
-msgstr ""
+msgstr "Impossibile trovare alcun controllore VPSA attivo"
 
 #: cinder/exception.py:623
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
-msgstr ""
+msgstr "Impossibile recuperare i collegamenti per il volume %(name)s"
 
 #: cinder/exception.py:627
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
-msgstr ""
+msgstr "Collegamento non valido per il volume %(name)s: %(reason)s"
 
 #: cinder/exception.py:631
 #, python-format
 msgid "Bad HTTP response status %(status)s"
-msgstr ""
+msgstr "Stato %(status)s risposta HTTP non corretto"
 
 #: cinder/exception.py:636
 msgid "Bad response from SolidFire API"
-msgstr ""
+msgstr "Risposta dell'API SolidFire non valida"
 
 #: cinder/exception.py:640
 msgid "SolidFire Cinder Driver exception"
@@ -645,12 +660,12 @@ msgstr ""
 #: cinder/exception.py:644
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
-msgstr ""
+msgstr "Errore nella risposta dell'API SolidFire: data=%(data)s"
 
 #: cinder/exception.py:648
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
-msgstr ""
+msgstr "Impossibile individuare l'account %(account_name)s nell'unità Solidfire"
 
 #: cinder/exception.py:654
 #, python-format
@@ -658,27 +673,25 @@ msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
 #: cinder/exception.py:659
-#, fuzzy
 msgid "Unknown NFS exception"
-msgstr "E' stato riscontrato un errore sconosciuto"
+msgstr "Eccezione NFS sconosciuta"
 
 #: cinder/exception.py:663
 msgid "No mounted NFS shares found"
-msgstr ""
+msgstr "Non è stata trovata nessuna condivisione di NFS montata"
 
 #: cinder/exception.py:667 cinder/exception.py:680
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
-msgstr ""
+msgstr "Non esiste alcuna condivisione che può ospitare %(volume_size)sG"
 
 #: cinder/exception.py:672
-#, fuzzy
 msgid "Unknown Gluster exception"
-msgstr "E' stato riscontrato un errore sconosciuto"
+msgstr "Eccezione Gluster sconosciuta"
 
 #: cinder/exception.py:676
 msgid "No mounted Gluster shares found"
-msgstr ""
+msgstr "Non è stata trovata nessuna condivisione di Gluster montata"
 
 #: cinder/exception.py:684
 #, python-format
@@ -729,44 +742,46 @@ msgstr ""
 
 #: cinder/manager.py:128
 msgid "Notifying Schedulers of capabilities ..."
-msgstr ""
+msgstr "Notifica degli Scheduler delle funzioni ..."
 
 #: cinder/policy.py:30
 msgid "JSON file representing policy"
-msgstr ""
+msgstr "File JSON che rappresenta la politica"
 
 #: cinder/policy.py:33
 msgid "Rule checked when requested rule is not found"
 msgstr ""
+"La regola è stata controllata quando la regola richiesta non è stata "
+"trovata"
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -785,17 +800,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
-msgstr ""
+msgstr "Avvio del nodo %(topic)s (versione %(version_string)s)"
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -804,40 +819,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr "Servizio terminato che non ha entry nel database"
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr "Il servizio é scomparso dal database, ricreo."
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr "Connessione al model server ripristinata!"
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr "model server é scomparso"
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
-msgstr ""
+msgstr "il servizio() può essere chiamato solo una volta"
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
-#, fuzzy
 msgid "Full set of CONF:"
-msgstr "Insieme di FLAGS:"
+msgstr "Impostazione completa di CONF:"
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -854,27 +868,27 @@ msgstr ""
 
 #: cinder/utils.py:213
 msgid "Specify a password or private_key"
-msgstr ""
+msgstr "Specificare una password o private_key"
 
 #: cinder/utils.py:229
 #, python-format
 msgid "Error connecting via ssh: %s"
-msgstr ""
+msgstr "Errore durante la connessione mediante ssh: %s"
 
 #: cinder/utils.py:413
 #, python-format
 msgid "Invalid backend: %s"
-msgstr ""
+msgstr "Backend non valido: %s"
 
 #: cinder/utils.py:424
 #, python-format
 msgid "backend %s"
-msgstr ""
+msgstr "backend %s"
 
 #: cinder/utils.py:699
 #, python-format
 msgid "Could not remove tmpdir: %s"
-msgstr ""
+msgstr "Impossibile rimuovere tmpdir: %s"
 
 #: cinder/utils.py:760
 #, python-format
@@ -884,7 +898,7 @@ msgstr ""
 #: cinder/utils.py:782
 #, python-format
 msgid "%s is not a string or unicode"
-msgstr ""
+msgstr "%s non è una stringa o unicode"
 
 #: cinder/utils.py:786
 #, python-format
@@ -894,33 +908,37 @@ msgstr ""
 #: cinder/utils.py:791
 #, python-format
 msgid "%(name)s has more than %(max_length)s characters."
-msgstr ""
+msgstr "%(name)s ha più di %(max_length)s caratteri."
 
 #: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
-msgstr ""
+msgstr "Impossibile trovare il file_cert : %s"
 
 #: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find ca_file : %s"
-msgstr "Impossibile localizzare il volume %s"
+msgstr "Impossibile trovare il file_ca: %s"
 
 #: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
-msgstr ""
+msgstr "Impossibile trovare il file_chiavi : %s"
 
 #: 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 ""
+"Quando si esegue il server in modalità SSL, è necessario specificare sia "
+"un valore dell'opzione cert_file che key_file nel file di configurazione"
 
 #: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
+"Impossibile collegarsi a %(host)s:%(port)s dopo aver tentato per 30 "
+"secondi"
 
 #: cinder/wsgi.py:215
 #, python-format
@@ -929,15 +947,15 @@ msgstr ""
 
 #: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
-msgstr ""
+msgstr "Arresto del server WSGI."
 
 #: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
-msgstr ""
+msgstr "Il server WSGI è stato arrestato."
 
 #: cinder/wsgi.py:322
 msgid "You must implement __call__"
-msgstr ""
+msgstr "È necessario implementare __call__"
 
 #: cinder/api/auth.py:26
 msgid ""
@@ -953,105 +971,105 @@ msgstr ""
 
 #: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:282
 msgid "limit param must be an integer"
-msgstr ""
+msgstr "parametro limite deve essere un numero intero"
 
 #: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:279
 msgid "limit param must be positive"
-msgstr ""
+msgstr "parametro limite deve essere positivo"
 
 #: cinder/api/common.py:120
 msgid "offset param must be an integer"
-msgstr ""
+msgstr "il parametro offset deve essere un numero intero"
 
 #: cinder/api/common.py:134
 msgid "offset param must be positive"
-msgstr ""
+msgstr "il parametro offset deve essere un numero positivo"
 
 #: cinder/api/common.py:162
 #, python-format
 msgid "marker [%s] not found"
-msgstr ""
+msgstr "indicatore [%s] non trovato"
 
 #: cinder/api/common.py:189
 #, python-format
 msgid "href %s does not contain version"
-msgstr ""
+msgstr "href %s non contiene la versione"
 
 #: cinder/api/extensions.py:183
 msgid "Initializing extension manager."
-msgstr ""
+msgstr "Inizializzazione gestore estensioni."
 
 #: cinder/api/extensions.py:198
 #, python-format
 msgid "Loaded extension: %s"
-msgstr ""
+msgstr "Estensione caricata: %s"
 
 #: cinder/api/extensions.py:236
 #, python-format
 msgid "Ext name: %s"
-msgstr ""
+msgstr "Nome estensione: %s"
 
 #: cinder/api/extensions.py:237
 #, python-format
 msgid "Ext alias: %s"
-msgstr ""
+msgstr "Alias estensione: %s"
 
 #: cinder/api/extensions.py:238
 #, python-format
 msgid "Ext description: %s"
-msgstr ""
+msgstr "Descrizione estensione: %s"
 
 #: cinder/api/extensions.py:240
 #, python-format
 msgid "Ext namespace: %s"
-msgstr ""
+msgstr "Spazio dei nomi estensione: %s"
 
 #: cinder/api/extensions.py:241
 #, python-format
 msgid "Ext updated: %s"
-msgstr ""
+msgstr "Estensione aggiornata: %s"
 
 #: cinder/api/extensions.py:243
 #, python-format
 msgid "Exception loading extension: %s"
-msgstr ""
+msgstr "Eccezione durante il caricamento dell'estensione: %s"
 
 #: cinder/api/extensions.py:257
 #, python-format
 msgid "Loading extension %s"
-msgstr ""
+msgstr "Caricamento dell'estensione %s"
 
 #: cinder/api/extensions.py:263
 #, python-format
 msgid "Calling extension factory %s"
-msgstr ""
+msgstr "Chiamata factory estensione %s"
 
 #: cinder/api/extensions.py:277
 #, python-format
 msgid "osapi_volume_extension is set to deprecated path: %s"
-msgstr ""
+msgstr "osapi_volume_extension è impostato come percorso obsoleto: %s"
 
 #: cinder/api/extensions.py:279
 #, python-format
 msgid ""
 "Please set your flag or cinder.conf settings for osapi_volume_extension "
 "to: %s"
-msgstr ""
+msgstr "Impostare cinder.conf o l'indicatore per osapi_volume_extension su: %s"
 
 #: cinder/api/extensions.py:288
 #, python-format
 msgid "Failed to load extension %(ext_factory)s: %(exc)s"
-msgstr ""
+msgstr "Impossibile caricare l'estensione %(ext_factory)s: %(exc)s"
 
 #: cinder/api/extensions.py:357
 #, python-format
 msgid "Failed to load extension %(classpath)s: %(exc)s"
-msgstr ""
+msgstr "Impossibile caricare l'estensione %(classpath)s: %(exc)s"
 
 #: cinder/api/extensions.py:382
 #, python-format
 msgid "Failed to load extension %(ext_name)s: %(exc)s"
-msgstr ""
+msgstr "Impossibile caricare l'estensione %(ext_name)s: %(exc)s"
 
 #: cinder/api/sizelimit.py:25
 msgid ""
@@ -1061,66 +1079,68 @@ msgstr ""
 
 #: cinder/api/xmlutil.py:266
 msgid "element is not a child"
-msgstr ""
+msgstr "l'elemento non è un child"
 
 #: cinder/api/xmlutil.py:463
 msgid "root element selecting a list"
-msgstr ""
+msgstr "l'elemento root seleziona un elenco"
 
 #: cinder/api/xmlutil.py:786
 #, python-format
 msgid "Template tree mismatch; adding slave %(slavetag)s to master %(mastertag)s"
 msgstr ""
+"Mancata corrispondenza della struttura ad albero del template; aggiunta "
+"di slave %(slavetag)s a master %(mastertag)s"
 
 #: cinder/api/xmlutil.py:907
 msgid "subclasses must implement construct()!"
-msgstr ""
+msgstr "le sottoclassi devono implementare il costrutto()!"
 
 #: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
-msgstr ""
+msgstr "Aggiornamento di %(resource)s '%(id)s' con '%(update)r'"
 
 #: cinder/api/contrib/backups.py:161
 #, python-format
 msgid "show called for member %s"
-msgstr ""
+msgstr "mostra (show) chiamato per il membro %s"
 
 #: cinder/api/contrib/backups.py:173
 #, python-format
 msgid "delete called for member %s"
-msgstr ""
+msgstr "elimina (delete) chiamato per il membro %s"
 
 #: cinder/api/contrib/backups.py:176
 #, python-format
 msgid "Delete backup with id: %s"
-msgstr ""
+msgstr "Elimina (delete) backup con l'id: %s"
 
 #: cinder/api/contrib/backups.py:218
 #, python-format
 msgid "Creating new backup %s"
-msgstr ""
+msgstr "Creazione di un nuovo backup %s"
 
 #: cinder/api/contrib/backups.py:228 cinder/api/contrib/backups.py:260
 #: cinder/api/contrib/volume_transfer.py:157
 #: cinder/api/contrib/volume_transfer.py:193
 msgid "Incorrect request body format"
-msgstr ""
+msgstr "Il formato del corpo della richiesta non è corretto"
 
 #: cinder/api/contrib/backups.py:234
 #, python-format
 msgid "Creating backup of volume %(volume_id)s in container %(container)s"
-msgstr ""
+msgstr "Creazione backup del volume %(volume_id)s nel contenitore %(container)s"
 
 #: cinder/api/contrib/backups.py:257
 #, python-format
 msgid "Restoring backup %(backup_id)s (%(body)s)"
-msgstr ""
+msgstr "Ripristino del backup %(backup_id)s (%(body)s)"
 
 #: cinder/api/contrib/backups.py:267
 #, python-format
 msgid "Restoring backup %(backup_id)s to volume %(volume_id)s"
-msgstr ""
+msgstr "Ripristino del backup %(backup_id)s nel volume %(volume_id)s"
 
 #: cinder/api/contrib/backups.py:300
 #, python-format
@@ -1153,39 +1173,39 @@ msgstr ""
 
 #: cinder/api/contrib/extended_snapshot_attributes.py:60
 msgid "Snapshot not found."
-msgstr ""
+msgstr "Istantanea non trovata."
 
 #: cinder/api/contrib/hosts.py:86 cinder/api/openstack/wsgi.py:237
 msgid "cannot understand XML"
-msgstr ""
+msgstr "Impossibile riconoscere XML"
 
 #: cinder/api/contrib/hosts.py:136
 #, python-format
 msgid "Host '%s' could not be found."
-msgstr ""
+msgstr "Impossibile trovare l'host '%s'."
 
 #: cinder/api/contrib/hosts.py:165
 #, python-format
 msgid "Invalid status: '%s'"
-msgstr ""
+msgstr "Stato non valido: '%s'"
 
 #: cinder/api/contrib/hosts.py:168
 #, python-format
 msgid "Invalid update setting: '%s'"
-msgstr ""
+msgstr "Impostazione di aggiornamento non valida: '%s'"
 
 #: cinder/api/contrib/hosts.py:180
 #, python-format
 msgid "Setting host %(host)s to %(state)s."
-msgstr ""
+msgstr "Impostazione dell'host %(host)s su %(state)s."
 
 #: cinder/api/contrib/hosts.py:206
 msgid "Describe-resource is admin only functionality"
-msgstr ""
+msgstr "Describe-resource è una funzionalità solo di admin"
 
 #: cinder/api/contrib/hosts.py:214
 msgid "Host not found"
-msgstr ""
+msgstr "Host non trovato"
 
 #: cinder/api/contrib/qos_specs_manage.py:110
 msgid "Please specify a name for QoS specs."
@@ -1222,7 +1242,7 @@ msgstr ""
 
 #: cinder/api/contrib/quotas.py:68
 msgid "Quota limit must be -1 or greater."
-msgstr ""
+msgstr "Il limite della quota deve essere -1 o superiore."
 
 #: cinder/api/contrib/quotas.py:105
 msgid "Missing required element quota_set in request body."
@@ -1235,7 +1255,7 @@ msgstr ""
 
 #: cinder/api/contrib/scheduler_hints.py:36
 msgid "Malformed scheduler_hints attribute"
-msgstr ""
+msgstr "Attributo scheduler_hints non corretto"
 
 #: cinder/api/contrib/services.py:91
 msgid ""
@@ -1269,19 +1289,19 @@ msgstr ""
 
 #: cinder/api/contrib/types_extra_specs.py:101
 msgid "Request body empty"
-msgstr ""
+msgstr "Corpo della richiesta vuoto"
 
 #: cinder/api/contrib/types_extra_specs.py:105
 #: cinder/api/v1/snapshot_metadata.py:75 cinder/api/v1/volume_metadata.py:75
 #: cinder/api/v2/snapshot_metadata.py:75 cinder/api/v2/volume_metadata.py:74
 msgid "Request body and URI mismatch"
-msgstr ""
+msgstr "Il corpo della richiesta e l'URI non corrispondono"
 
 #: cinder/api/contrib/types_extra_specs.py:108
 #: cinder/api/v1/snapshot_metadata.py:79 cinder/api/v1/volume_metadata.py:79
 #: cinder/api/v2/snapshot_metadata.py:79 cinder/api/v2/volume_metadata.py:78
 msgid "Request body contains too many items"
-msgstr ""
+msgstr "Il corpo della richiesta contiene troppi elementi"
 
 #: cinder/api/contrib/types_extra_specs.py:152
 msgid ""
@@ -1320,7 +1340,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_actions.py:230
 msgid "No image_name was specified in request."
-msgstr ""
+msgstr "Nessun image_name specificato nella richiesta."
 
 #: cinder/api/contrib/volume_actions.py:238
 msgid "Bad value for 'force' parameter."
@@ -1330,26 +1350,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1380,9 +1412,9 @@ msgid "Creating new volume transfer %s"
 msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:162
-#, fuzzy, python-format
+#, python-format
 msgid "Creating transfer of volume %s"
-msgstr "Impossibile localizzare il volume %s"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:183
 #, python-format
@@ -1455,7 +1487,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1465,17 +1497,17 @@ msgstr ""
 
 #: cinder/api/middleware/auth.py:112
 msgid "Invalid service catalog json."
-msgstr ""
+msgstr "json del catalogo del servizio non è valido."
 
 #: cinder/api/middleware/fault.py:44
 #, python-format
 msgid "Caught error: %s"
-msgstr ""
+msgstr "Intercettato errore: %s"
 
 #: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:978
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
-msgstr ""
+msgstr "%(url)s restituito con HTTP %(status)d"
 
 #: cinder/api/middleware/fault.py:69
 #, python-format
@@ -1485,16 +1517,16 @@ msgstr ""
 #: cinder/api/middleware/sizelimit.py:55 cinder/api/middleware/sizelimit.py:64
 #: cinder/api/middleware/sizelimit.py:78
 msgid "Request is too large."
-msgstr ""
+msgstr "La richiesta è troppo grande."
 
 #: cinder/api/openstack/__init__.py:69
 msgid "Must specify an ExtensionManager class"
-msgstr ""
+msgstr "È necessario specificare una classe ExtensionManager"
 
 #: cinder/api/openstack/__init__.py:80
 #, python-format
 msgid "Extended resource: %s"
-msgstr ""
+msgstr "Risorsa estesa: %s"
 
 #: cinder/api/openstack/__init__.py:104
 #, python-format
@@ -1502,11 +1534,13 @@ msgid ""
 "Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
 "resource"
 msgstr ""
+"Estensione %(ext_name)s: impossibile estendere la risorsa %(collection)s:"
+" non esiste alcuna risorsa simile"
 
 #: cinder/api/openstack/__init__.py:110
 #, python-format
 msgid "Extension %(ext_name)s extending resource: %(collection)s"
-msgstr ""
+msgstr "Punto di estensione %(ext_name)s che estende la risorsa: %(collection)s"
 
 #: cinder/api/openstack/__init__.py:126
 msgid ""
@@ -1522,43 +1556,43 @@ msgstr ""
 
 #: cinder/api/openstack/wsgi.py:212 cinder/api/openstack/wsgi.py:628
 msgid "cannot understand JSON"
-msgstr ""
+msgstr "impossibile riconoscere JSON"
 
 #: cinder/api/openstack/wsgi.py:633
 msgid "too many body keys"
-msgstr ""
+msgstr "troppe chiavi del corpo"
 
 #: cinder/api/openstack/wsgi.py:671
 #, python-format
 msgid "Exception handling resource: %s"
-msgstr ""
+msgstr "Eccezione durante la gestione della risorsa: %s"
 
 #: cinder/api/openstack/wsgi.py:676
 #, python-format
 msgid "Fault thrown: %s"
-msgstr ""
+msgstr "Errore generato: %s"
 
 #: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "HTTP exception thrown: %s"
-msgstr ""
+msgstr "Generata eccezione HTTP: %s"
 
 #: cinder/api/openstack/wsgi.py:787
 msgid "Empty body provided in request"
-msgstr ""
+msgstr "Corpo vuoto fornito nella richiesta"
 
 #: cinder/api/openstack/wsgi.py:793
 msgid "Unrecognized Content-Type provided in request"
-msgstr ""
+msgstr "Tipo-contenuto fornito nella richiesta non riconosciuto"
 
 #: cinder/api/openstack/wsgi.py:797
 msgid "No Content-Type provided in request"
-msgstr ""
+msgstr "Nessun tipo-contenuto fornito nella richiesta"
 
 #: cinder/api/openstack/wsgi.py:908
 #, python-format
 msgid "There is no such action: %s"
-msgstr ""
+msgstr "Non esiste alcuna azione simile: %s"
 
 #: cinder/api/openstack/wsgi.py:911 cinder/api/openstack/wsgi.py:924
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
@@ -1570,20 +1604,20 @@ msgstr ""
 #: cinder/api/v2/volume_metadata.py:52 cinder/api/v2/volume_metadata.py:70
 #: cinder/api/v2/volume_metadata.py:95 cinder/api/v2/volume_metadata.py:120
 msgid "Malformed request body"
-msgstr ""
+msgstr "Corpo richiesta non corretto"
 
 #: cinder/api/openstack/wsgi.py:921
 msgid "Unsupported Content-Type"
-msgstr ""
+msgstr "Tipo-contenuto non supportato"
 
 #: cinder/api/openstack/wsgi.py:933
 msgid "Malformed request url"
-msgstr ""
+msgstr "url richiesta non corretto"
 
 #: cinder/api/openstack/wsgi.py:981
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
-msgstr ""
+msgstr "%(url)s ha restituito un errore: %(e)s"
 
 #: cinder/api/openstack/volume/__init__.py:25
 msgid ""
@@ -1603,18 +1637,19 @@ msgid ""
 "Only %(value)s %(verb)s request(s) can be made to %(uri)s every "
 "%(unit_string)s."
 msgstr ""
+"Solo le richieste %(value)s %(verb)s request(s) possono essere effettuate"
+" a %(uri)s ogni %(unit_string)s."
 
 #: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
-msgstr ""
+msgstr "Questa richiesta era rate-limited."
 
 #: cinder/api/v1/snapshot_metadata.py:37 cinder/api/v1/snapshot_metadata.py:117
 #: cinder/api/v1/snapshot_metadata.py:156 cinder/api/v2/snapshot_metadata.py:37
 #: cinder/api/v2/snapshot_metadata.py:117
 #: cinder/api/v2/snapshot_metadata.py:156
-#, fuzzy
 msgid "snapshot does not exist"
-msgstr "istanza %s: creazione snapshot in corso"
+msgstr "l'istantanea non esiste"
 
 #: cinder/api/v1/snapshot_metadata.py:139
 #: cinder/api/v1/snapshot_metadata.py:149 cinder/api/v1/volume_metadata.py:139
@@ -1622,12 +1657,12 @@ msgstr "istanza %s: creazione snapshot in corso"
 #: cinder/api/v2/snapshot_metadata.py:149 cinder/api/v2/volume_metadata.py:138
 #: cinder/api/v2/volume_metadata.py:148
 msgid "Metadata item was not found"
-msgstr ""
+msgstr "L'elemento metadati non è stato trovato"
 
 #: cinder/api/v1/snapshots.py:119 cinder/api/v2/snapshots.py:120
 #, python-format
 msgid "Delete snapshot with id: %s"
-msgstr ""
+msgstr "Elimina istantanea con id: %s"
 
 #: cinder/api/v1/snapshots.py:173 cinder/api/v2/snapshots.py:184
 msgid "'volume_id' must be specified"
@@ -1636,33 +1671,33 @@ msgstr ""
 #: cinder/api/v1/snapshots.py:182 cinder/api/v2/snapshots.py:193
 #, python-format
 msgid "Create snapshot from volume %s"
-msgstr ""
+msgstr "Crea istantanea dal volume %s"
 
 #: cinder/api/v1/snapshots.py:186 cinder/api/v2/snapshots.py:202
 #, python-format
 msgid "Invalid value '%s' for force. "
-msgstr ""
+msgstr "Valore non valido '%s' per force. "
 
 #: cinder/api/v1/volume_metadata.py:37 cinder/api/v1/volume_metadata.py:117
 #: cinder/api/v1/volume_metadata.py:156 cinder/api/v2/volume_metadata.py:36
 #: cinder/api/v2/volume_metadata.py:116 cinder/api/v2/volume_metadata.py:155
 msgid "volume does not exist"
-msgstr ""
+msgstr "il volume non esiste"
 
 #: cinder/api/v1/volumes.py:114
 #, python-format
 msgid "vol=%s"
-msgstr ""
+msgstr "vol=%s"
 
 #: cinder/api/v1/volumes.py:293 cinder/api/v2/volumes.py:181
 #, python-format
 msgid "Delete volume with id: %s"
-msgstr ""
+msgstr "Elimina volume con id: %s"
 
 #: cinder/api/v1/volumes.py:347 cinder/api/v1/volumes.py:351
 #: cinder/api/v2/volumes.py:251 cinder/api/v2/volumes.py:255
 msgid "Invalid imageRef provided."
-msgstr ""
+msgstr "imageRef specificato non è valido."
 
 #: cinder/api/v1/volumes.py:391 cinder/api/v2/volumes.py:308
 #, python-format
@@ -1677,12 +1712,12 @@ msgstr ""
 #: cinder/api/v1/volumes.py:415 cinder/api/v2/volumes.py:331
 #, python-format
 msgid "Create volume of %s GB"
-msgstr ""
+msgstr "Crea volume di %s GB"
 
 #: cinder/api/v1/volumes.py:504
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
-msgstr ""
+msgstr "Rimozione opzioni '%(bad_options)s' dalla query"
 
 #: cinder/api/v2/snapshots.py:111 cinder/api/v2/snapshots.py:126
 #: cinder/api/v2/snapshots.py:267
@@ -1702,53 +1737,55 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
-msgstr ""
+msgstr "Rimozione opzioni '%s' dalla query"
 
 #: cinder/backup/api.py:66
-#, fuzzy
 msgid "Backup status must be available or error"
-msgstr "Lo stato del volume deve essere disponibile"
+msgstr "Lo stato del backup deve essere available o error"
 
-#: cinder/backup/api.py:115
-#, fuzzy
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
-msgstr "Lo stato del volume deve essere disponibile"
+msgstr "Il volume di cui deve essere effettuato il backup deve essere disponibile"
 
-#: cinder/backup/api.py:150
-#, fuzzy
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
-msgstr "Lo stato del volume deve essere disponibile"
+msgstr "Lo stato del backup deve essere available"
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
-msgstr ""
+msgstr "Il backup da ripristinare ha una dimensione non valida"
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
+"Creazione del volume di %(size)s GB per il ripristino del backup "
+"%(backup_id)s"
 
-#: cinder/backup/api.py:180
-#, fuzzy
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
-msgstr "Lo stato del volume deve essere disponibile"
+msgstr "Il volume da ripristinare deve essere disponibile"
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
+"La dimensione del volume %(volume_size)d è troppo piccola per il "
+"ripristino del backup la cui dimensione è %(size)d."
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
+"Sovrascrittura del volume %(volume_id)s con ripristino del backup "
+"%(backup_id)s"
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2030,7 +2067,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2095,7 +2132,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2106,243 +2143,302 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:463
+#, python-format
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:474
+#, python-format
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:492
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Pipe1 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:506
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Pipe2 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
+#, python-format
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:702
 #, python-format
-msgid "Creating base image='%s'"
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
 #, python-format
 msgid "unsupported compression algorithm: %s"
-msgstr ""
+msgstr "algoritmo di compressione non supportato: %s"
 
 #: cinder/backup/drivers/swift.py:122
 #, python-format
@@ -2353,16 +2449,18 @@ msgstr ""
 #, python-format
 msgid "_create_container started, container: %(container)s,backup: %(backup_id)s"
 msgstr ""
+"_create_container avviato, contenitore: %(container)s, backup: "
+"%(backup_id)s"
 
 #: cinder/backup/drivers/swift.py:159
 #, python-format
 msgid "_generate_swift_object_name_prefix: %s"
-msgstr ""
+msgstr "_generate_swift_object_name_prefix: %s"
 
 #: cinder/backup/drivers/swift.py:168
 #, python-format
 msgid "generated object list: %s"
-msgstr ""
+msgstr "elenco oggetti generato: %s"
 
 #: cinder/backup/drivers/swift.py:179
 #, python-format
@@ -2370,6 +2468,8 @@ msgid ""
 "_write_metadata started, container name: %(container)s, metadata "
 "filename: %(filename)s"
 msgstr ""
+"_write_metadata avviato, nome contenitore: %(container)s, nome file "
+"metadati: %(filename)s"
 
 #: cinder/backup/drivers/swift.py:197
 #, python-format
@@ -2378,10 +2478,13 @@ msgid ""
 "[%(etag)s] is not the same as MD5 of metadata file sent to swift "
 "[%(md5)s]"
 msgstr ""
+"errore durante la scrittura del file di metadati in swift, MD5 del file "
+"di metadati in swift [%(etag)s] non è uguale a MD5 del file di metadati "
+"inviati a swift [%(md5)s]"
 
 #: cinder/backup/drivers/swift.py:202
 msgid "_write_metadata finished"
-msgstr ""
+msgstr "_write_metadata completato"
 
 #: cinder/backup/drivers/swift.py:207
 #, python-format
@@ -2389,16 +2492,18 @@ msgid ""
 "_read_metadata started, container name: %(container)s, metadata filename:"
 " %(filename)s"
 msgstr ""
+"_read_metadata avviato, nome contenitore: %(container)s, nome file "
+"metadati: %(filename)s"
 
 #: cinder/backup/drivers/swift.py:212
 #, python-format
 msgid "_read_metadata finished (%s)"
-msgstr ""
+msgstr "_read_metadata completato (%s)"
 
 #: cinder/backup/drivers/swift.py:222
-#, fuzzy, python-format
+#, python-format
 msgid "volume size %d is invalid."
-msgstr "La richiesta non è valida."
+msgstr "la dimensione del volume %d non è valida."
 
 #: cinder/backup/drivers/swift.py:236
 #, python-format
@@ -2407,10 +2512,13 @@ msgid ""
 "%(volume_size_bytes)d, swift object names prefix %(object_prefix)s, "
 "availability zone: %(availability_zone)s"
 msgstr ""
+"Avvio del backup del volume: %(volume_id)s in swift, dimensione del "
+"volume: %(volume_size_bytes)d, prefisso nomi oggetti swift "
+"%(object_prefix)s, zona di disponibilità: %(availability_zone)s"
 
 #: cinder/backup/drivers/swift.py:260
 msgid "reading chunk of data from volume"
-msgstr ""
+msgstr "lettura porzione di dati dal volume"
 
 #: cinder/backup/drivers/swift.py:267
 #, python-format
@@ -2418,24 +2526,26 @@ msgid ""
 "compressed %(data_size_bytes)d bytes of data to %(comp_size_bytes)d bytes"
 " using %(algorithm)s"
 msgstr ""
+"compressi %(data_size_bytes)d byte di dati in %(comp_size_bytes)d byte "
+"utilizzando %(algorithm)s"
 
 #: cinder/backup/drivers/swift.py:276
 msgid "not compressing data"
-msgstr ""
+msgstr "la compressione dati non è in corso"
 
 #: cinder/backup/drivers/swift.py:280
 msgid "About to put_object"
-msgstr ""
+msgstr "In procinto di put_object"
 
 #: cinder/backup/drivers/swift.py:286
 #, python-format
 msgid "swift MD5 for %(object_name)s: %(etag)s"
-msgstr ""
+msgstr "swift MD5 per %(object_name)s: %(etag)s"
 
 #: cinder/backup/drivers/swift.py:290
 #, python-format
 msgid "backup MD5 for %(object_name)s: %(md5)s"
-msgstr ""
+msgstr "backup MD5 per %(object_name)s: %(md5)s"
 
 #: cinder/backup/drivers/swift.py:293
 #, python-format
@@ -2443,15 +2553,17 @@ msgid ""
 "error writing object to swift, MD5 of object in swift %(etag)s is not the"
 " same as MD5 of object sent to swift %(md5)s"
 msgstr ""
+"errore di scrittura dell'oggetto in swift, MD5 dell'oggetto in swift "
+"%(etag)s non è uguale a MD5 dell'oggetto inviato a swift %(md5)s"
 
 #: cinder/backup/drivers/swift.py:301
 msgid "Calling eventlet.sleep(0)"
-msgstr ""
+msgstr "Chiamata di eventlet.sleep(0)"
 
 #: cinder/backup/drivers/swift.py:319
 #, python-format
 msgid "backup %s finished."
-msgstr ""
+msgstr "backup %s completato."
 
 #: cinder/backup/drivers/swift.py:352
 #, python-format
@@ -2461,18 +2573,20 @@ msgstr ""
 #: cinder/backup/drivers/swift.py:362
 #, python-format
 msgid "v1 swift volume backup restore of %s started"
-msgstr ""
+msgstr "ripristino del backup del volume swift v1 di %s avviato"
 
 #: cinder/backup/drivers/swift.py:367
 #, python-format
 msgid "metadata_object_names = %s"
-msgstr ""
+msgstr "metadata_object_names = %s"
 
 #: cinder/backup/drivers/swift.py:373
 msgid ""
 "restore_backup aborted, actual swift object list in swift does not match "
 "object list stored in metadata"
 msgstr ""
+"restore_backup interrotto, l'elenco di oggetti swift corrente non "
+"corrisponde all'elenco di oggetti memorizzato nei metadati"
 
 #: cinder/backup/drivers/swift.py:379
 #, python-format
@@ -2480,16 +2594,18 @@ msgid ""
 "restoring object from swift. backup: %(backup_id)s, container: "
 "%(container)s, swift object name: %(object_name)s, volume: %(volume_id)s"
 msgstr ""
+"ripristino oggetto da swift. backup: %(backup_id)s, contenitore: "
+"%(container)s, nome oggetto swift: %(object_name)s, volume: %(volume_id)s"
 
 #: cinder/backup/drivers/swift.py:395
 #, python-format
 msgid "decompressing data using %s algorithm"
-msgstr ""
+msgstr "decompressione dati utilizzando l'algoritmo %s"
 
 #: cinder/backup/drivers/swift.py:418
 #, python-format
 msgid "v1 swift volume backup restore of %s finished"
-msgstr ""
+msgstr "ripristino del backup del volume swift v1 di %s completato"
 
 #: cinder/backup/drivers/swift.py:426
 #, python-format
@@ -2497,40 +2613,46 @@ msgid ""
 "starting restore of backup %(object_prefix)s from swift container: "
 "%(container)s, to volume %(volume_id)s, backup: %(backup_id)s"
 msgstr ""
+"avvio ripristino del backup %(object_prefix)s dal contenitore swift: "
+"%(container)s, nel volume %(volume_id)s, backup: %(backup_id)s"
 
 #: cinder/backup/drivers/swift.py:440
 #, python-format
 msgid "Restoring swift backup version %s"
-msgstr ""
+msgstr "ripristino della versione di backup swift %s"
 
 #: cinder/backup/drivers/swift.py:445
 #, python-format
 msgid "No support to restore swift backup version %s"
-msgstr ""
+msgstr "Nessun supporto per ripristinare la versione di backup swift %s"
 
 #: cinder/backup/drivers/swift.py:461
 #, python-format
 msgid "restore %(backup_id)s to %(volume_id)s finished."
-msgstr ""
+msgstr "ripristino %(backup_id)s in %(volume_id)s completato."
 
 #: cinder/backup/drivers/swift.py:475
 msgid "swift error while listing objects, continuing with delete"
-msgstr ""
+msgstr "errore swift durante l'elencazione degli oggetti, l'eliminazione continua"
 
 #: cinder/backup/drivers/swift.py:484
 #, python-format
 msgid "swift error while deleting object %s, continuing with delete"
 msgstr ""
+"errore swift durante l'eliminazione dell'oggetto %s, l'eliminazione "
+"continua"
 
 #: cinder/backup/drivers/swift.py:487
 #, python-format
 msgid "deleted swift object: %(swift_object_name)s in container: %(container)s"
 msgstr ""
+"oggetto swift eliminato: %(swift_object_name)s nel contenitore: "
+"%(container)s"
 
 #: cinder/backup/drivers/swift.py:497
 #, python-format
 msgid "delete %s finished"
-msgstr ""
+msgstr "eliminazione %s completata"
 
 #: cinder/backup/drivers/tsm.py:78
 #, python-format
@@ -2719,17 +2841,17 @@ msgstr ""
 #: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
-msgstr ""
+msgstr "Impossibile creare la destinazione iscsi per il volume %(volume_id)s."
 
 #: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
-msgstr ""
+msgstr "Impossibile rimuovere la destinazione iscsi per il volume %(volume_id)s."
 
 #: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
-msgstr ""
+msgstr "Impossibile collegare la destinazione per il volume %(volume_id)s."
 
 #: cinder/brick/exception.py:120
 #, python-format
@@ -2765,12 +2887,12 @@ msgstr ""
 
 #: cinder/brick/initiator/connector.py:609
 msgid "We are unable to locate any Fibre Channel devices"
-msgstr ""
+msgstr "Impossibile individuare alcuna unità Fibre Channel"
 
 #: cinder/brick/initiator/connector.py:619
 #, python-format
 msgid "Looking for Fibre Channel dev %(device)s"
-msgstr ""
+msgstr "Ricerca unità Fibre Channel %(device)s"
 
 #: cinder/brick/initiator/connector.py:629
 msgid "Fibre Channel volume device not found."
@@ -2789,7 +2911,7 @@ msgstr ""
 #: cinder/brick/initiator/connector.py:658
 #, python-format
 msgid "Multipath device discovered %(device)s"
-msgstr ""
+msgstr "Unità multipath rilevata %(device)s"
 
 #: cinder/brick/initiator/connector.py:776
 #, python-format
@@ -2828,7 +2950,7 @@ msgstr ""
 
 #: cinder/brick/initiator/linuxfc.py:50 cinder/brick/initiator/linuxfc.py:56
 msgid "systool is not installed"
-msgstr ""
+msgstr "systool non è installato"
 
 #: cinder/brick/initiator/linuxscsi.py:99
 #: cinder/brick/initiator/linuxscsi.py:107
@@ -2861,7 +2983,7 @@ msgstr ""
 #: cinder/brick/iscsi/iscsi.py:172
 #, python-format
 msgid "Creating iscsi_target for: %s"
-msgstr ""
+msgstr "Creazione di iscsi_target per: %s"
 
 #: cinder/brick/iscsi/iscsi.py:179
 #, python-format
@@ -2870,10 +2992,10 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
+#, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
-msgstr "Impossibile localizzare il volume %s"
+msgstr ""
 
 #: cinder/brick/iscsi/iscsi.py:222
 #, python-format
@@ -2881,59 +3003,66 @@ msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
+"Impossibile creare la destinazione iscsi per l'id volume:%(vol_id)s. "
+"Assicurarsi che il file di configurazione tgtd contenga 'include "
+"%(volumes_dir)s/*'"
 
 #: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
-msgstr ""
+msgstr "Rimozione di iscsi_target per: %s"
 
 #: cinder/brick/iscsi/iscsi.py:256
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
+#, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
-msgstr "Impossibile localizzare il volume %s"
+msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
-msgid "valid iqn needed for show_target"
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
+msgid "valid iqn needed for show_target"
+msgstr "iqn valido necessario per show_target"
+
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
-msgstr ""
+msgstr "Rimoziome di iscsi_target per il volume: %s"
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
-msgstr ""
+msgstr "Creazione di iscsi_target per il volume: %s"
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:552
+#, python-format
 msgid "Removing iscsi_target: %s"
-msgstr "Riavviando l'istanza %s"
+msgstr "Rimozione di iscsi_target: %s"
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
-msgstr ""
+msgstr "Impossibile aggiungere l'iniziatore iqn %s alla destinazione"
 
 #: cinder/brick/local_dev/lvm.py:75
 msgid "Error creating Volume Group"
@@ -2964,18 +3093,18 @@ msgid "StdErr  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:82
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to locate Volume Group %s"
-msgstr "Impossibile localizzare il volume %s"
+msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:157
 msgid "Error querying thin pool about data_percent"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:370
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find VG: %s"
-msgstr "Impossibile smontare il volume %s"
+msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:420
 msgid ""
@@ -3055,82 +3184,81 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
 #: cinder/common/sqlalchemyutils.py:66
 #: cinder/openstack/common/db/sqlalchemy/utils.py:72
 msgid "Id not in sort_keys; is sort_keys unique?"
-msgstr ""
+msgstr "Id non è presente in sort_keys; è sort_keys univoco?"
 
 #: cinder/common/sqlalchemyutils.py:114
 #: cinder/openstack/common/db/sqlalchemy/utils.py:120
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
-msgstr ""
+msgstr "Direzione ordinamento sconosciuta, deve essere 'desc' o 'asc'"
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
 
 #: cinder/db/sqlalchemy/api.py:65
 msgid "Use of empty request context is deprecated"
-msgstr ""
+msgstr "L'utilizzo di un contesto di richiesta vuoto è obsoleto"
 
 #: cinder/db/sqlalchemy/api.py:192
 #, python-format
 msgid "Unrecognized read_deleted value '%s'"
-msgstr ""
+msgstr "Valore read_deleted non riconosciuto '%s'"
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
-#, fuzzy
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
-msgstr "Lo stato del volume deve essere disponibile"
+msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3139,19 +3267,19 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migration.py:37
 msgid "version should be an integer"
-msgstr ""
+msgstr "la versione deve essere un numero intero"
 
 #: cinder/db/sqlalchemy/migration.py:64
 msgid "Upgrade DB using Essex release first."
-msgstr ""
+msgstr "Aggiorna il DB utilizzando prima la release Essex."
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/001_cinder_init.py:240
 msgid "Exception while creating table."
-msgstr ""
+msgstr "Eccezione durante la creazione della tabella."
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/001_cinder_init.py:269
 msgid "Downgrade from initial Cinder install is unsupported."
-msgstr ""
+msgstr "Downgrade dall'installazione Cinder iniziale non supportata."
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:49
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:74
@@ -3163,7 +3291,7 @@ msgstr ""
 #: cinder/db/sqlalchemy/migrate_repo/versions/020_add_volume_admin_metadata_table.py:46
 #, python-format
 msgid "Table |%s| not created!"
-msgstr ""
+msgstr "Tabella |%s| non creata!"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:127
 msgid "Dropping foreign key reservations_ibfk_1 failed."
@@ -3171,31 +3299,31 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:133
 msgid "quota_classes table not dropped"
-msgstr ""
+msgstr "tabella quota_classes non cancellata"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:140
 msgid "quota_usages table not dropped"
-msgstr ""
+msgstr "tabella quota_usages non cancellata"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:147
 msgid "reservations table not dropped"
-msgstr ""
+msgstr "tabella prenotazioni non cancellata"
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
-msgstr ""
+msgstr "tabella volume_glance_metadata non cancellata"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/008_add_backup.py:68
 msgid "backups table not dropped"
-msgstr ""
+msgstr "tabella di backup non cancellata"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/009_add_snapshot_metadata_table.py:58
 msgid "snapshot_metadata table not dropped"
-msgstr ""
+msgstr "tabella snapshot_metadata non cancellata"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/010_add_transfers_table.py:61
 msgid "transfers table not dropped"
@@ -3288,12 +3416,12 @@ msgstr ""
 
 #: cinder/image/image_utils.py:94 cinder/image/image_utils.py:199
 msgid "'qemu-img info' parsing failed."
-msgstr ""
+msgstr "analisi di 'qemu-img info' non riuscita."
 
 #: cinder/image/image_utils.py:101
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
-msgstr ""
+msgstr "fmt=%(fmt)s sottoposto a backup da: %(backing_file)s"
 
 #: cinder/image/image_utils.py:109 cinder/image/image_utils.py:192
 #, python-format
@@ -3323,7 +3451,7 @@ msgstr ""
 #: cinder/image/image_utils.py:206
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
-msgstr ""
+msgstr "fmt=%(fmt)s sottoposto a backup da: %(backing_file)s"
 
 #: cinder/image/image_utils.py:224
 #, python-format
@@ -3333,7 +3461,7 @@ msgstr ""
 #: cinder/image/image_utils.py:260
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
-msgstr ""
+msgstr "Convertito in %(f1)s, ma il formato ora è %(f2)s"
 
 #: cinder/keymgr/conf_key_mgr.py:78
 msgid ""
@@ -3358,7 +3486,7 @@ msgstr ""
 #: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
-msgstr ""
+msgstr "Eccezione originale in corso di eliminazione: %s"
 
 #: cinder/openstack/common/excutils.py:91
 #, python-format
@@ -3368,7 +3496,7 @@ msgstr ""
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
-msgstr ""
+msgstr "Ricaricamento file memorizzato nella cache %s"
 
 #: cinder/openstack/common/gettextutils.py:271
 msgid "Message objects do not support addition."
@@ -3387,62 +3515,68 @@ msgstr ""
 
 #: cinder/openstack/common/imageutils.py:104
 msgid "Snapshot list encountered but no header found!"
-msgstr ""
+msgstr "Elenco istantanee rilevato ma nessuna intestazione è stata trovata!"
 
 #: cinder/openstack/common/lockutils.py:102
 #, python-format
 msgid "Could not release the acquired lock `%s`"
-msgstr ""
+msgstr "Impossibile rilasciare il blocco acquisito `%s`"
 
 #: cinder/openstack/common/lockutils.py:189
 #, python-format
 msgid "Got semaphore \"%(lock)s\" for method \"%(method)s\"..."
-msgstr ""
+msgstr "Ricevuto semaforo \"%(lock)s\" per il metodo \"%(method)s\"..."
 
 #: cinder/openstack/common/lockutils.py:200
 #, python-format
 msgid "Attempting to grab file lock \"%(lock)s\" for method \"%(method)s\"..."
 msgstr ""
+"Tentativo di ottenere il blocco sul file \"%(lock)s\" per il metodo "
+"\"%(method)s\"..."
 
 #: cinder/openstack/common/lockutils.py:227
 #, python-format
 msgid "Got file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
+"Ottenuto blocco sul file \"%(lock)s\" al %(path)s per il metodo "
+"\"%(method)s\"..."
 
 #: cinder/openstack/common/lockutils.py:235
 #, python-format
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
+"Rilasciato il blocco sul file \"%(lock)s\" al %(path)s per il metodo "
+"\"%(method)s\"..."
 
-#: cinder/openstack/common/log.py:326
-#, fuzzy, python-format
+#: cinder/openstack/common/log.py:327
+#, python-format
 msgid "Deprecated: %s"
-msgstr "ricevuto %s"
+msgstr "Obsoleto: %s"
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
-msgstr ""
+msgstr "La funzione syslog deve essere una tra le seguenti: %s"
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
-msgstr ""
+msgstr "Chiamata errata alla configurazione obsoleta: %(msg)s"
 
 #: cinder/openstack/common/loopingcall.py:82
 #, python-format
 msgid "task run outlasted interval by %s sec"
-msgstr ""
+msgstr "La durata dell'attività eseguita ha superato l'intervallo di %s secondi"
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
-msgstr ""
+msgstr "chiamata in loop a durata fissa"
 
 #: cinder/openstack/common/loopingcall.py:129
 #, python-format
@@ -3451,32 +3585,32 @@ msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:136
 msgid "in dynamic looping call"
-msgstr ""
+msgstr "chiamata in loop dinamico"
 
 #: cinder/openstack/common/periodic_task.py:43
 #, python-format
 msgid "Unexpected argument for periodic task creation: %(arg)s."
-msgstr ""
+msgstr "Argomento imprevisto per creazione attività periodica: %(arg)s."
 
 #: cinder/openstack/common/periodic_task.py:134
 #, python-format
 msgid "Skipping periodic task %(task)s because its interval is negative"
-msgstr ""
+msgstr "Abbadono dell'attività periodica %(task)s perché l'intervalo è negativo"
 
 #: cinder/openstack/common/periodic_task.py:139
 #, python-format
 msgid "Skipping periodic task %(task)s because it is disabled"
-msgstr ""
+msgstr "Abbadono dell'attività periodica %(task)s perché è disabilitata"
 
 #: cinder/openstack/common/periodic_task.py:177
 #, python-format
 msgid "Running periodic task %(full_task_name)s"
-msgstr ""
+msgstr "Esecuzione attività periodica %(full_task_name)s"
 
 #: cinder/openstack/common/periodic_task.py:186
 #, python-format
 msgid "Error during %(full_task_name)s: %(e)s"
-msgstr ""
+msgstr "Errore durante %(full_task_name)s: %(e)s"
 
 #: cinder/openstack/common/policy.py:149
 #, python-format
@@ -3484,26 +3618,30 @@ msgid ""
 "Inheritance-based rules are deprecated; use the default brain instead of "
 "%s."
 msgstr ""
+"Le regole basate sull'eredità sono obsolete; utilizzare le informazioni "
+"predefinite invece di %s."
 
 #: cinder/openstack/common/policy.py:163
 #, python-format
 msgid "Failed to understand rule %(match)r"
-msgstr ""
+msgstr "Impossibile comprendere la regola %(match)r"
 
 #: cinder/openstack/common/policy.py:173
 #, python-format
 msgid "Inheritance-based rules are deprecated; update _check_%s"
-msgstr ""
+msgstr "Le regole basate sull'eredità sono obsolete; aggiornare _check_%s"
 
 #: cinder/openstack/common/policy.py:180
 #, python-format
 msgid "No handler for matches of kind %s"
-msgstr ""
+msgstr "Nessun gestore per le corrispondenze di tipo %s"
 
 #: cinder/openstack/common/processutils.py:127
 #, python-format
 msgid "Got unknown keyword args to utils.execute: %r"
 msgstr ""
+"Gli argomenti parola chiave ricevuti sono sconosciuti per utils.execute: "
+"%r"
 
 #: cinder/openstack/common/processutils.py:142
 #, python-format
@@ -3520,7 +3658,7 @@ msgstr "Il risultato é %s"
 #: cinder/openstack/common/processutils.py:179
 #, python-format
 msgid "%r failed. Retrying."
-msgstr ""
+msgstr "%r non riuscito. Nuovo tentativo."
 
 #: cinder/openstack/common/processutils.py:218
 #, python-format
@@ -3529,11 +3667,11 @@ msgstr "Eseguendo cmd (SSH): %s"
 
 #: cinder/openstack/common/processutils.py:220
 msgid "Environment not supported over SSH"
-msgstr ""
+msgstr "Ambiente non supportato in SSH"
 
 #: cinder/openstack/common/processutils.py:224
 msgid "process_input not supported over SSH"
-msgstr ""
+msgstr "input_processo non supportato in SSH"
 
 #: cinder/openstack/common/request_utils.py:66
 #, python-format
@@ -3556,7 +3694,7 @@ msgstr ""
 #: cinder/openstack/common/service.py:269
 #, python-format
 msgid "Caught %s, exiting"
-msgstr ""
+msgstr "Rilevato %s, esistente"
 
 #: cinder/openstack/common/service.py:187
 msgid "Exception during rpc cleanup."
@@ -3564,51 +3702,50 @@ msgstr ""
 
 #: cinder/openstack/common/service.py:238
 msgid "Parent process has died unexpectedly, exiting"
-msgstr ""
+msgstr "Il processo principale è stato interrotto inaspettatamente, uscire"
 
 #: cinder/openstack/common/service.py:275
-#, fuzzy
 msgid "Unhandled exception"
-msgstr "Eccezione interna: %s"
+msgstr "Eccezione non gestita"
 
 #: cinder/openstack/common/service.py:308
 msgid "Forking too fast, sleeping"
-msgstr ""
+msgstr "Sblocco troppo veloce, attendere"
 
 #: cinder/openstack/common/service.py:327
 #, python-format
 msgid "Started child %d"
-msgstr ""
+msgstr "Child avviato %d"
 
 #: cinder/openstack/common/service.py:337
 #, python-format
 msgid "Starting %d workers"
-msgstr ""
+msgstr "Avvio %d operatori"
 
 #: cinder/openstack/common/service.py:354
 #, python-format
 msgid "Child %(pid)d killed by signal %(sig)d"
-msgstr ""
+msgstr "Child %(pid)d interrotto dal segnale %(sig)d"
 
 #: cinder/openstack/common/service.py:358
 #, python-format
 msgid "Child %(pid)s exited with status %(code)d"
-msgstr ""
+msgstr "Child %(pid)s terminato con stato %(code)d"
 
 #: cinder/openstack/common/service.py:362
 #, python-format
 msgid "pid %d not in child list"
-msgstr ""
+msgstr "pid %d non incluso nell'elenco child"
 
 #: cinder/openstack/common/service.py:392
 #, python-format
 msgid "Caught %s, stopping children"
-msgstr ""
+msgstr "Intercettato %s, arresto in corso dei children"
 
 #: cinder/openstack/common/service.py:410
 #, python-format
 msgid "Waiting on %d children to exit"
-msgstr ""
+msgstr "In attesa %d degli elementi secondari per uscire"
 
 #: cinder/openstack/common/sslutils.py:98
 #, python-format
@@ -3660,25 +3797,25 @@ msgstr ""
 
 #: cinder/openstack/common/db/exception.py:44
 msgid "Invalid Parameter: Unicode is not supported by the current database."
-msgstr ""
+msgstr "Parametro non valido: Unicode non è supportato dal database corrente."
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:487
 msgid "DB exception wrapped."
-msgstr ""
+msgstr "Eccezione DB con wrapper."
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:538
 #, python-format
 msgid "Got mysql server has gone away: %s"
-msgstr ""
+msgstr "Ricevuto messaggio di interruzione della connessione del server mysql: %s"
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:610
 #, python-format
 msgid "SQL connection failed. %s attempts left."
-msgstr ""
+msgstr "Connessione SQL non riuscita. Sono rimasti %s tentativi."
 
 #: cinder/openstack/common/db/sqlalchemy/utils.py:33
 msgid "Sort key supplied was not valid."
-msgstr ""
+msgstr "La chiave di ordinamento fornita non è valida."
 
 #: cinder/openstack/common/scheduler/filters/capabilities_filter.py:54
 #, python-format
@@ -3697,7 +3834,7 @@ msgstr ""
 #: cinder/openstack/common/scheduler/filters/ignore_attempted_hosts_filter.py:52
 #, python-format
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
-msgstr ""
+msgstr "Host %(host)s %(pass_msg)s.  Host provati precedentemente: %(hosts)s"
 
 #: cinder/scheduler/driver.py:69
 msgid "Must implement host_passes_filters"
@@ -3709,11 +3846,11 @@ msgstr ""
 
 #: cinder/scheduler/driver.py:78
 msgid "Must implement a fallback schedule"
-msgstr ""
+msgstr "È necessario implementare una pianificazione fallback"
 
 #: cinder/scheduler/driver.py:82
 msgid "Must implement schedule_create_volume"
-msgstr ""
+msgstr "È necessario implementare schedule_create_volume"
 
 #: cinder/scheduler/filter_scheduler.py:98
 #, python-format
@@ -3734,7 +3871,7 @@ msgstr ""
 
 #: cinder/scheduler/filter_scheduler.py:156
 msgid "Invalid value for 'scheduler_max_attempts', must be >=1"
-msgstr ""
+msgstr "Valore non valido per 'scheduler_max_attempts', deve essere >= 1"
 
 #: cinder/scheduler/filter_scheduler.py:174
 #, python-format
@@ -3742,11 +3879,15 @@ msgid ""
 "Error scheduling %(volume_id)s from last vol-service: %(last_host)s : "
 "%(exc)s"
 msgstr ""
+"Errore durante la pianificazione di %(volume_id)s dall'ultimo vol-"
+"service: %(last_host)s : %(exc)s"
 
 #: cinder/scheduler/filter_scheduler.py:207
 #, python-format
 msgid "Exceeded max scheduling attempts %(max_attempts)d for volume %(volume_id)s"
 msgstr ""
+"Superamento numero max tentativi di pianificazione %(max_attempts)d per "
+"il volume %(volume_id)s"
 
 #: cinder/scheduler/filter_scheduler.py:259
 #, python-format
@@ -3761,19 +3902,19 @@ msgstr ""
 #: cinder/scheduler/host_manager.py:266
 #, python-format
 msgid "Ignoring %(service_name)s service update from %(host)s"
-msgstr ""
+msgstr "Viene ignorato l'aggiornamento del servizio %(service_name)s da %(host)s"
 
 #: cinder/scheduler/host_manager.py:271
 #, python-format
 msgid "Received %(service_name)s service update from %(host)s."
-msgstr ""
+msgstr "Ricevuto l'aggiornamento del servizio %(service_name)s da %(host)s."
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3802,12 +3943,14 @@ msgstr ""
 #: cinder/scheduler/manager.py:219
 #, python-format
 msgid "Failed to schedule_%(method)s: %(ex)s"
-msgstr ""
+msgstr "Impossibile eseguire schedule_%(method)s: %(ex)s"
 
 #: cinder/scheduler/scheduler_options.py:68
 #, python-format
 msgid "Could not stat scheduler options file %(filename)s: '%(e)s'"
 msgstr ""
+"Impossibile eseguire stat per il file di opzioni dello "
+"scheduler%(filename)s: '%(e)s'"
 
 #: cinder/scheduler/scheduler_options.py:78
 #, python-format
@@ -3817,6 +3960,8 @@ msgstr ""
 #: cinder/scheduler/filters/capacity_filter.py:43
 msgid "Free capacity not set: volume node info collection broken."
 msgstr ""
+"Capacità libera non impostata: raccolta informazioni sul nodo del volume "
+"interrotta."
 
 #: cinder/scheduler/filters/capacity_filter.py:57
 #, python-format
@@ -3824,6 +3969,8 @@ msgid ""
 "Insufficient free space for volume creation (requested / avail): "
 "%(requested)s/%(available)s"
 msgstr ""
+"Spazio libero insufficiente per la creazione di volumi "
+"(richiesto/disponibile): %(requested)s/%(available)s"
 
 #: cinder/scheduler/flows/create_volume.py:53
 msgid "No volume_id provided to populate a request_spec from"
@@ -3842,9 +3989,9 @@ msgstr ""
 #: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:883
 #, python-format
 msgid "FAKE ISCSI: %s"
-msgstr ""
+msgstr "FAKE ISCSI: %s"
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3856,29 +4003,31 @@ msgstr ""
 #: cinder/tests/fake_driver.py:124 cinder/tests/fake_driver.py:129
 #, python-format
 msgid "LoggingVolumeDriver: %s"
-msgstr ""
+msgstr "LoggingVolumeDriver: %s"
 
 #: cinder/tests/fake_utils.py:70
 #, python-format
 msgid "Faking execution of cmd (subprocess): %s"
-msgstr ""
+msgstr "Falsa esecuzione di cmd (sottoprocesso): %s"
 
 #: cinder/tests/fake_utils.py:78
 #, python-format
 msgid "Faked command matched %s"
-msgstr ""
+msgstr "Comando falsificato corrispondente %s"
 
 #: cinder/tests/fake_utils.py:94
 #, python-format
 msgid "Faked command raised an exception %s"
-msgstr ""
+msgstr "Il comando falsificato ha generato un'eccezione %s"
 
 #: cinder/tests/fake_utils.py:97
 #, python-format
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
+"La risposta al comando falsificato è stdout='%(stdout)s' "
+"stderr='%(stderr)s'"
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3888,7 +4037,7 @@ msgstr ""
 #: cinder/tests/test_ibm_xiv_ds8k.py:102
 #, python-format
 msgid "Volume not found for instance %(instance_id)s."
-msgstr ""
+msgstr "Volume non trovato per l'istanza %(instance_id)s."
 
 #: cinder/tests/test_misc.py:58
 #, python-format
@@ -3896,6 +4045,8 @@ msgid ""
 "The following migrations are missing a downgrade:\n"
 "\t%s"
 msgstr ""
+"Nelle seguenti migrazioni manca un downgrade:\n"
+"\t%s"
 
 #: cinder/tests/test_netapp.py:1327
 msgid "Error not a TypeError."
@@ -3910,50 +4061,55 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
 #: cinder/tests/test_storwize_svc.py:252
 #, python-format
 msgid "unrecognized argument %s"
-msgstr ""
+msgstr "argomento non riconosciuto %s"
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
-msgstr ""
+msgstr "Esegui comando CLI: %s"
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
 " stdout: %(stdout)s\n"
 " stderr: %(stderr)s"
 msgstr ""
+"Output CLI:\n"
+" stdout: %(stdout)s\n"
+" stderr: %(stderr)s"
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
 " stdout: %(out)s\n"
 " stderr: %(err)s"
 msgstr ""
+"Output eccezione CLI:\n"
+" stdout: %(out)s\n"
+" stderr: %(err)s"
 
 #: cinder/tests/test_volume_types.py:60
 #, python-format
 msgid "Given data: %s"
-msgstr ""
+msgstr "Dati specificati: %s"
 
 #: cinder/tests/test_volume_types.py:61
 #, python-format
 msgid "Result data: %s"
-msgstr ""
+msgstr "Dati del risultato: %s"
 
-#: cinder/tests/api/contrib/test_backups.py:737
-#, fuzzy
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
-msgstr "E' stato ricevuto un input non valido"
+msgstr "Input non valido"
 
 #: cinder/tests/brick/test_brick_remotefs.py:99
 msgid "Unexpected call to _execute."
@@ -3964,9 +4120,9 @@ msgid "mount failed."
 msgstr ""
 
 #: cinder/tests/integrated/test_login.py:29
-#, fuzzy, python-format
+#, python-format
 msgid "volume: %s"
-msgstr "volume %s: rimuovendo"
+msgstr "volume: %s"
 
 #: cinder/tests/integrated/api/client.py:34
 #, python-format
@@ -3975,47 +4131,50 @@ msgid ""
 "Status Code: %(_status)s\n"
 "Body: %(_body)s"
 msgstr ""
+"%(message)s\n"
+"Codice dello stato: %(_status)s\n"
+"Corpo: %(_body)s"
 
 #: cinder/tests/integrated/api/client.py:44
 msgid "Authentication error"
-msgstr ""
+msgstr "Errore di autenticazione"
 
 #: cinder/tests/integrated/api/client.py:52
 msgid "Authorization error"
-msgstr ""
+msgstr "Errore di autorizzazione"
 
 #: cinder/tests/integrated/api/client.py:60
 msgid "Item not found"
-msgstr ""
+msgstr "Elemento non trovato"
 
 #: cinder/tests/integrated/api/client.py:97
 #, python-format
 msgid "Doing %(method)s on %(relative_url)s"
-msgstr ""
+msgstr "Esecuzione %(method)s in %(relative_url)s"
 
 #: cinder/tests/integrated/api/client.py:100
 #, python-format
 msgid "Body: %s"
-msgstr ""
+msgstr "Corpo: %s"
 
 #: cinder/tests/integrated/api/client.py:124
 #, python-format
 msgid "%(auth_uri)s => code %(http_status)s"
-msgstr ""
+msgstr "%(auth_uri)s => codice %(http_status)s"
 
 #: cinder/tests/integrated/api/client.py:147
 #, python-format
 msgid "%(relative_uri)s => code %(http_status)s"
-msgstr ""
+msgstr "%(relative_uri)s => codice %(http_status)s"
 
 #: cinder/tests/integrated/api/client.py:158
 msgid "Unexpected status code"
-msgstr ""
+msgstr "Codice di stato imprevisto"
 
 #: cinder/tests/integrated/api/client.py:165
 #, python-format
 msgid "Decoding JSON: %s"
-msgstr ""
+msgstr "Decodifica di JSON: %s"
 
 #: cinder/tests/zonemanager/test_brcd_fc_zone_driver.py:124
 #, python-format
@@ -4053,12 +4212,12 @@ msgstr ""
 
 #: cinder/transfer/api.py:102 cinder/volume/api.py:350
 msgid "status must be available"
-msgstr ""
+msgstr "lo stato deve essere available"
 
 #: cinder/transfer/api.py:119
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to create transfer record for %s"
-msgstr "Impossibile localizzare il volume %s"
+msgstr ""
 
 #: cinder/transfer/api.py:136
 #, python-format
@@ -4071,6 +4230,8 @@ msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG volume "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
+"Quota superata per %(s_pid)s, si è tentato di creare %(s_size)sG del "
+"volume (%(d_consumed)dG di %(d_quota)dG già utilizzato)"
 
 #: cinder/transfer/api.py:182
 #, python-format
@@ -4105,7 +4266,7 @@ msgstr ""
 
 #: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
-msgstr ""
+msgstr "Impossibile aggiornare la quota per eliminazione volume"
 
 #: cinder/volume/api.py:228
 #, python-format
@@ -4119,26 +4280,25 @@ msgstr ""
 #: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
-msgstr ""
+msgstr "Il volume contiene ancora istantanee dipendenti %d"
 
 #: cinder/volume/api.py:293 cinder/volume/api.py:333
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
-msgstr ""
+msgstr "Ricerca per: %s"
 
 #: cinder/volume/api.py:353
 msgid "already attached"
-msgstr ""
+msgstr "già collegato"
 
 #: cinder/volume/api.py:360
 msgid "status must be in-use to detach"
 msgstr ""
 
 #: cinder/volume/api.py:371
-#, fuzzy
 msgid "Volume status must be available to reserve"
-msgstr "Lo stato del volume deve essere disponibile"
+msgstr "Lo stato del volume deve essere available per prenotare"
 
 #: cinder/volume/api.py:447
 msgid "Snapshot cannot be created while volume is migrating"
@@ -4146,7 +4306,7 @@ msgstr ""
 
 #: cinder/volume/api.py:451
 msgid "must be available"
-msgstr ""
+msgstr "deve essere available"
 
 #: cinder/volume/api.py:473
 #, python-format
@@ -4154,6 +4314,8 @@ msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
+"Quota superata per %(s_pid)s, si è tentato di creare %(s_size)sG "
+"istantanea (%(d_consumed)dG di %(d_quota)dG già utilizzata)"
 
 #: cinder/volume/api.py:485
 #, python-format
@@ -4161,32 +4323,32 @@ msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
+"Quota superata per %(s_pid)s, si è tentato di creare l'istantanea "
+"(%(d_consumed)d delle istantanee già utilizzate)"
 
 #: cinder/volume/api.py:536
-#, fuzzy
 msgid "Volume Snapshot status must be available or error"
-msgstr "Lo stato del volume deve essere disponibile"
+msgstr "Lo stato delll'istantanea del volume deve essere available o error"
 
 #: cinder/volume/api.py:564 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
-msgstr ""
+msgstr "La chiave della proprietà dei metadati è vuota"
 
 #: cinder/volume/api.py:568
 msgid "Metadata property key greater than 255 characters"
-msgstr ""
+msgstr "La chiave della proprietà dei metadati supera 255 caratteri"
 
 #: cinder/volume/api.py:572
 msgid "Metadata property value greater than 255 characters"
-msgstr ""
+msgstr "Il valore della proprietà dei metadati supera 255 caratteri"
 
 #: cinder/volume/api.py:703 cinder/volume/api.py:777
-#, fuzzy
 msgid "Volume status must be available/in-use."
-msgstr "Lo stato del volume deve essere disponibile"
+msgstr "Lo stato del volume deve essere available/in-use."
 
 #: cinder/volume/api.py:706
 msgid "Volume status is in-use."
-msgstr ""
+msgstr "Lo stato del volume è in-use."
 
 #: cinder/volume/api.py:735
 msgid "Volume status must be available to extend."
@@ -4214,66 +4376,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4281,6 +4443,8 @@ msgstr ""
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
 msgstr ""
+"Viene eseguito un recupero da un'esecuzione non riuscita.  Provare il "
+"numero %s"
 
 #: cinder/volume/driver.py:278
 #, python-format
@@ -4300,27 +4464,27 @@ msgstr ""
 #: cinder/volume/driver.py:335
 #, python-format
 msgid "copy_image_to_volume %s."
-msgstr ""
+msgstr "copy_image_to_volume %s."
 
 #: cinder/volume/driver.py:352
 #, python-format
 msgid "copy_volume_to_image %s."
-msgstr ""
+msgstr "copy_volume_to_image %s."
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4335,18 +4499,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
-msgstr ""
+msgstr "volume %s: rimozione esportazione"
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4369,9 +4533,9 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
-msgstr ""
+msgstr "ISCSI provider_location non memorizzato, viene utilizzato il rilevamento"
 
 #: cinder/volume/driver.py:652
 #, python-format
@@ -4384,27 +4548,27 @@ msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
 #: cinder/volume/driver.py:701
-#, fuzzy, python-format
+#, python-format
 msgid "Could not find iSCSI export for volume %s"
-msgstr "Impossibile localizzare il volume %s"
+msgstr "Impossibile trovare l'esportazione iSCSI per il volume %s"
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
-msgstr ""
+msgstr "Rilevamento ISCSI: trovato %s"
 
 #: cinder/volume/driver.py:802
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4412,8 +4576,15 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
+msgstr "Il driver deve implementare initialize_connection"
+
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
 msgstr ""
 
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
@@ -4421,6 +4592,8 @@ msgstr ""
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
+"remove_export viene ignorato. Nessun provision di iscsi_target per il "
+"volume: %s"
 
 #: cinder/volume/iscsi.py:80
 #, python-format
@@ -4428,21 +4601,23 @@ msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
+"remove_export viene ignorato. Nessun iscsi_target viene al momento "
+"esportato per il volume: %s"
 
 #: cinder/volume/iscsi.py:100
 msgid "Detected inconsistency in provider_location id"
-msgstr ""
+msgstr "Rilevata incongruenza nell'id di provider_location"
 
 #: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:572
 #: cinder/volume/drivers/huawei/rest_common.py:1225
 #, python-format
 msgid "%s"
-msgstr ""
+msgstr "%s"
 
 #: cinder/volume/iscsi.py:184
 #, python-format
 msgid "Symbolic link %s not found"
-msgstr ""
+msgstr "Link simbolico %s non trovato"
 
 #: cinder/volume/iscsi.py:251
 #, python-format
@@ -4453,287 +4628,284 @@ msgstr ""
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
+"ensure_export viene ignorato. Nessun provision di iscsi_target per il "
+"volume: %s"
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
+"Il percorso del driver %s è obsoleto, aggiornare la configurazione con il"
+" nuovo percorso."
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
-msgstr ""
+msgstr "Riesportazione dei volume %s"
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
-msgstr ""
+msgstr "volume %s: l'esportazione viene ignorata"
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
-msgstr ""
+msgstr "Ripresa di tutte le operazioni di eliminazione in corso"
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
-msgstr ""
+msgstr "Ripresa eliminazione (delete) nel volume: %s"
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr "volume %s: rimuovendo"
 
-#: cinder/volume/manager.py:390
-#, fuzzy
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
-msgstr "Volume ancora collegato"
+msgstr "Per questo nodo, volume non è locale"
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
-msgstr ""
+msgstr "Impossibile aggiornare utilizzi eliminazione volume"
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr "volume %s: rimosso con successo"
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
-msgstr ""
+msgstr "istantanea %s: creazione"
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
-msgstr ""
+msgstr "istantanea %s: creata correttamente"
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
-msgstr ""
+msgstr "istantanea %s: eliminazione"
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
-msgstr ""
+msgstr "Impossibile aggiornare utilizzi eliminazione istantanea"
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
-msgstr ""
+msgstr "istantanea %s: eliminata correttamente"
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
-msgstr ""
+msgstr "in fase di collegamento da parte di un'altra istanza"
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
-msgstr ""
+msgstr "Volume caricato %(volume_id)s nell'immagine (%(image_id)s) correttamente"
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
-msgstr ""
+msgstr "Aggiornamento dello stato del volume"
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
-msgstr ""
+msgstr "Notifica {%s} ricevuta"
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4749,13 +4921,13 @@ msgstr ""
 #: cinder/volume/volume_types.py:43
 #, python-format
 msgid "DB error: %s"
-msgstr ""
+msgstr "Errore DB: %s"
 
 #: cinder/volume/qos_specs.py:123 cinder/volume/qos_specs.py:140
 #: cinder/volume/qos_specs.py:272 cinder/volume/volume_types.py:52
 #: cinder/volume/volume_types.py:99
 msgid "id cannot be None"
-msgstr ""
+msgstr "l'id non può essere None"
 
 #: cinder/volume/qos_specs.py:156
 #, python-format
@@ -4786,19 +4958,19 @@ msgstr ""
 
 #: cinder/volume/qos_specs.py:284 cinder/volume/volume_types.py:111
 msgid "name cannot be None"
-msgstr ""
+msgstr "il nome non può essere None"
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
-msgstr ""
+msgstr "Esecuzione di secure delete nel volume: %s"
 
 #: cinder/volume/volume_types.py:130
 #, python-format
@@ -4806,12 +4978,14 @@ msgid ""
 "Default volume type is not found, please check default_volume_type "
 "config: %s"
 msgstr ""
+"Il tipo di volume predefinito non è stato trovato, controllare la "
+"configurazione di default_volume_type: %s"
 
 #: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:284
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
-msgstr ""
+msgstr "Creazione clone del volume: %s"
 
 #: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
@@ -4921,11 +5095,11 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
-#, fuzzy, python-format
+#, python-format
 msgid "Error running SSH command: %s"
-msgstr "Si e' verificato un errore inatteso durante l'esecuzione del comando."
+msgstr "Errore durante l'esecuzione del comando SSH: %s"
 
 #: cinder/volume/drivers/eqlx.py:282
 #, python-format
@@ -5001,219 +5175,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
-msgstr ""
+msgstr "Nessun file di configurazione Gluster configurato (%s)"
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
-msgstr ""
+msgstr "Il file di configurazione Gluster in %(config)s non esiste"
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
-msgstr ""
+msgstr "mount.glusterfs non è installato"
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
-msgstr ""
+msgstr "esegui cast per %s"
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
-msgstr ""
+msgstr "Nel volume %s non è stato specificato provider_location, viene ignorato"
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
-msgstr ""
+msgstr "Eccezione durante il montaggio di %s"
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5235,7 +5409,7 @@ msgstr ""
 #: cinder/volume/drivers/lvm.py:246
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
-msgstr ""
+msgstr "istantanea: %s non trovata, le operazioni di eliminazione vengono ignorate"
 
 #: cinder/volume/drivers/lvm.py:347
 #, python-format
@@ -5280,17 +5454,17 @@ msgstr ""
 #: cinder/volume/drivers/nfs.py:380
 #, python-format
 msgid "%s is already mounted"
-msgstr ""
+msgstr "%s è già montato"
 
 #: cinder/volume/drivers/nfs.py:432
 #, python-format
 msgid "There's no NFS config file configured (%s)"
-msgstr ""
+msgstr "Nessun file di configurazione NFS configurato (%s)"
 
 #: cinder/volume/drivers/nfs.py:437
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
-msgstr ""
+msgstr "Il file di configurazione NFS in %(config)s non esiste"
 
 #: cinder/volume/drivers/nfs.py:442
 #, python-format
@@ -5322,175 +5496,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
-msgstr ""
+msgstr "errore durante l'aggiornamento delle statistiche del volume"
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
-msgstr ""
+msgstr "Non memorizzato in rbd"
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
-msgstr ""
+msgstr "Componenti vuoti"
 
-#: cinder/volume/drivers/rbd.py:718
-#, fuzzy
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
-msgstr "istanza %s: creazione snapshot in corso"
+msgstr "Non è un'istantanea rbd"
 
-#: cinder/volume/drivers/rbd.py:730
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:731
+#, python-format
 msgid "not cloneable: %s"
-msgstr "risposta %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
-msgstr ""
+msgstr "%s è un cluster ceph differente"
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:754
+#, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
-msgstr "Impossibile localizzare il volume %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5498,39 +5671,39 @@ msgstr ""
 
 #: cinder/volume/drivers/scality.py:67
 msgid "Value required for 'scality_sofs_config'"
-msgstr ""
+msgstr "Valore richiesto per 'scality_sofs_config'"
 
 #: cinder/volume/drivers/scality.py:78
 #, python-format
 msgid "Cannot access 'scality_sofs_config': %s"
-msgstr ""
+msgstr "Impossibile accedere a 'scality_sofs_config': %s"
 
 #: cinder/volume/drivers/scality.py:84
 msgid "Cannot execute /sbin/mount.sofs"
-msgstr ""
+msgstr "Impossibile eseguire /sbin/mount.sofs"
 
 #: cinder/volume/drivers/scality.py:105
 msgid "Cannot mount Scality SOFS, check syslog for errors"
-msgstr ""
+msgstr "Impossibile montare Scality SOFS, controllare il syslog per gli errori"
 
 #: cinder/volume/drivers/scality.py:139
 #, python-format
 msgid "Cannot find volume dir for Scality SOFS at '%s'"
-msgstr ""
+msgstr "Impossibile trovare la dir del volume per Scality SOFS in '%s'"
 
 #: cinder/volume/drivers/sheepdog.py:59
 #, python-format
 msgid "Sheepdog is not working: %s"
-msgstr ""
+msgstr "Sheepdog non funziona: %s"
 
 #: cinder/volume/drivers/sheepdog.py:64
 msgid "Sheepdog is not working"
-msgstr ""
+msgstr "Sheepdog non funziona"
 
 #: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
-msgstr ""
+msgstr "Payload per la chiamata dell'API SolidFire: %s"
 
 #: cinder/volume/drivers/solidfire.py:149
 #, python-format
@@ -5559,53 +5732,53 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
-msgstr ""
+msgstr "La chiamata a json.loads() ha generato un'eccezione: %s"
 
 #: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
-msgstr ""
+msgstr "Risultati della chiamata dell'API SolidFire: %s"
 
 #: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
-msgstr ""
+msgstr "Rilevata operazione clone: %s"
 
 #: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
-msgstr ""
+msgstr "In attesa dell'operazione in sospeso prima di riprovare l'istantanea: %s"
 
 #: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
-msgstr ""
+msgstr "Rilevato xDBVersionMismatch, riprovare %s of 5"
 
 #: cinder/volume/drivers/solidfire.py:200
 #: cinder/volume/drivers/solidfire.py:269
 #: cinder/volume/drivers/solidfire.py:364
-#, fuzzy, python-format
+#, python-format
 msgid "API response: %s"
-msgstr "risposta %s"
+msgstr "Risposta dell'API: %s"
 
 #: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
-msgstr ""
+msgstr "Trovato account solidfire: %s"
 
 #: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
-msgstr ""
+msgstr "account solidfire: %s non esiste, crearlo..."
 
 #: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
-msgstr ""
+msgstr "Impossibile recuperare il volume SolidFire-ID: %s in get_by_account!"
 
 #: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
-msgstr ""
+msgstr "Impossibile ottenere l'aggiornamento del modello dal clone"
 
 #: cinder/volume/drivers/solidfire.py:408
 #, python-format
@@ -5615,7 +5788,7 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
-msgstr ""
+msgstr "È stato rilevato più di un preset, utilizzando %s"
 
 #: cinder/volume/drivers/solidfire.py:458
 #, python-format
@@ -5625,26 +5798,26 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
-msgstr ""
+msgstr "Associato ID volume SolidFire %(sfid)s all'ID cinder %(uuid)s."
 
 #: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
-msgstr ""
+msgstr "Volume %s, non trovato nel cluster SF."
 
 #: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
-msgstr ""
+msgstr "Trovati %(count)s volumi associati all'id: %(uuid)s."
 
 #: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
-msgstr ""
+msgstr "Immettere SolidFire delete_volume..."
 
 #: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
-msgstr ""
+msgstr "L'account per ID volume %s non è stato trovato nel cluster SolidFire!"
 
 #: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
@@ -5657,23 +5830,23 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
-msgstr ""
+msgstr "L'ID volume %s non è stato trovato nel cluster SolidFire!"
 
 #: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
-msgstr ""
+msgstr "Uscita da SolidFire delete_volume"
 
 #: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
-msgstr ""
+msgstr "Esecuzione di SolidFire ensure_export..."
 
 #: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
-msgstr ""
+msgstr "Esecuzione di SolidFire create_export..."
 
 #: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
@@ -5685,31 +5858,30 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
-msgstr ""
+msgstr "Aggiornamento delle informazioni sullo stato del cluster"
 
 #: cinder/volume/drivers/solidfire.py:671
-#, fuzzy
 msgid "Failed to get updated stats"
-msgstr "Impossibile sospendere l'istanza"
+msgstr "Impossibile ottenere le statistiche aggiornate"
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
 #: cinder/volume/drivers/zadara.py:236
 #, python-format
 msgid "Sending %(method)s to %(url)s. Body \"%(body)s\""
-msgstr ""
+msgstr "Invio di %(method)s a %(url)s. Corpo \"%(body)s\""
 
 #: cinder/volume/drivers/zadara.py:260
 #, python-format
 msgid "Operation completed. %(data)s"
-msgstr ""
+msgstr "Operazione completata. %(data)s"
 
 #: cinder/volume/drivers/zadara.py:357
 #, python-format
@@ -5720,6 +5892,8 @@ msgstr ""
 #, python-format
 msgid "Volume %(name)s could not be found. It might be already deleted"
 msgstr ""
+"Impossibile trovare il volume %(name)s. Potrebbe essere già stato "
+"eliminato"
 
 #: cinder/volume/drivers/zadara.py:438
 #, python-format
@@ -5760,7 +5934,7 @@ msgstr ""
 #: cinder/volume/drivers/zadara.py:614
 #, python-format
 msgid "Attach properties: %(properties)s"
-msgstr ""
+msgstr "Collegare le proprietà: %(properties)s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:125
 #, python-format
@@ -5768,22 +5942,22 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
-msgstr ""
+msgstr "Impossibile trovare l'esportazione iSCSI per il volume %s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
-#, fuzzy, python-format
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
+#, python-format
 msgid "Cannot find device number for volume %s"
-msgstr "Impossibile localizzare il volume %s"
+msgstr "Impossibile trovare il numero unità per il volume %s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
-msgstr ""
+msgstr "Trovato endpoint iSCSI: %s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:209
 #, python-format
@@ -5800,21 +5974,23 @@ msgid ""
 "Module PyWBEM not installed.  Install PyWBEM using the python-pywbem "
 "package."
 msgstr ""
+"Modulo PyWBEM non installato.  Installare PyWBEM utilizzando il package "
+"python-pywbem."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:82
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:125
 msgid "Entering create_volume."
-msgstr ""
+msgstr "Immissione di create_volume."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:86
 #, python-format
 msgid "Create Volume: %(volume)s  Size: %(size)lu"
-msgstr ""
+msgstr "Creare il volume: %(volume)s  Dimensione: %(size)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:94
 #, python-format
 msgid "Create Volume: %(volume)s  Storage type: %(storage_type)s"
-msgstr ""
+msgstr "Creare il volume: %(volume)s  Tipo archivio: %(storage_type)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:101
 #, python-format
@@ -5822,6 +5998,8 @@ msgid ""
 "Create Volume: %(volume)s  Pool: %(pool)s  Storage System: "
 "%(storage_system)s"
 msgstr ""
+"Creare il volume: %(volume)s  Pool: %(pool)s  Sistema di archiviazione: "
+"%(storage_system)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:110
 #, python-format
@@ -5829,6 +6007,8 @@ msgid ""
 "Error Create Volume: %(volumename)s. Storage Configuration Service not "
 "found for pool %(storage_type)s."
 msgstr ""
+"Errore durante la creazione del volume: %(volumename)s. Servizio di "
+"configurazione archivio non trovato per il pool %(storage_type)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:120
 #, python-format
@@ -5841,7 +6021,7 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_smis_common.py:136
 #, python-format
 msgid "Create Volume: %(volumename)s  Return code: %(rc)lu"
-msgstr ""
+msgstr "Crea volume: %(volumename)s  Codice di ritorno: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:143
 #, python-format
@@ -5849,6 +6029,8 @@ msgid ""
 "Error Create Volume: %(volumename)s.  Return code: %(rc)lu.  Error: "
 "%(error)s"
 msgstr ""
+"Errore creazione volume: %(volumename)s.  Codice di ritorno: %(rc)lu.  "
+"Errore: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:164
 #, python-format
@@ -5860,7 +6042,7 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_smis_common.py:176
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:348
 msgid "Entering create_volume_from_snapshot."
-msgstr ""
+msgstr "Immissione create_volume_from_snapshot."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:181
 #, python-format
@@ -5868,6 +6050,8 @@ msgid ""
 "Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s"
 msgstr ""
+"Crea volume dall'istantanea: Volume: %(volumename)s  Istantanea: "
+"%(snapshotname)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:191
 #, python-format
@@ -5876,6 +6060,9 @@ msgid ""
 "%(snapshotname)s  Snapshot Instance: %(snapshotinstance)s  Storage "
 "System: %(storage_system)s."
 msgstr ""
+"Crea volume dall'istantanea: Volume: %(volumename)s  Istantanea: "
+"%(snapshotname)s  Istanza dell'istantanea: %(snapshotinstance)s  Sistema "
+"di archivio: %(storage_system)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:201
 #, python-format
@@ -5883,6 +6070,9 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s. Create Volume from Snapshot is NOT supported on VMAX."
 msgstr ""
+"Errore creazione volume dall'istantanea: Volume: %(volumename)s  "
+"Istantanea: %(snapshotname)s. La creazione volume dall'istantanea NON è "
+"supportato in VMAX."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:212
 #, python-format
@@ -5891,6 +6081,9 @@ msgid ""
 "%(snapshotname)s. Cannot find Replication Service to create volume from "
 "snapshot."
 msgstr ""
+"Errore creazione volume dall'istantanea: Volume: %(volumename)s  "
+"Istantanea: %(snapshotname)s. Impossibile trovare il servizio di replica "
+"per creare il volume dall'istantanea."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:221
 #, python-format
@@ -5900,6 +6093,10 @@ msgid ""
 "%(service)s  ElementName: %(elementname)s  SyncType: 8  SourceElement: "
 "%(sourceelement)s"
 msgstr ""
+"Creazione volume dall'istantanea: Volume: %(volumename)s  Istantanea: "
+"%(snapshotname)s  Metodo: CreateElementReplica  ReplicationService: "
+"%(service)s  ElementName: %(elementname)s  SyncType: 8  SourceElement: "
+"%(sourceelement)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:242
 #, python-format
@@ -5907,6 +6104,9 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  "
 "Snapshot:%(snapshotname)s.  Return code: %(rc)lu.Error: %(error)s"
 msgstr ""
+"Errore creazione volume dall'istantanea: Volume: %(volumename)s  "
+"Istantanea:%(snapshotname)s.  Codice di ritorno: %(rc)lu.  Errore: "
+"%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:268
 #, python-format
@@ -5915,6 +6115,9 @@ msgid ""
 "%(snapshotname)s.  Successfully clone volume from snapshot.  Finding the "
 "clone relationship."
 msgstr ""
+"Creazione volume dall'istantanea: Volume: %(volumename)s  Istantanea: "
+"%(snapshotname)s.  Clone volume dall'istantanea eseguito correttamente.  "
+"Ricerca della relazione del clone."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:280
 #, python-format
@@ -5924,6 +6127,10 @@ msgid ""
 "ModifyReplicaSynchronization ReplicationService: %(service)s  Operation: "
 "8  Synchronization: %(sync_name)s"
 msgstr ""
+"Creazione volume dall'istantanea: Volume: %(volumename)s  Istantanea: "
+"%(snapshotname)s.  Rimuovere la relazione del clone. Metodo: "
+"ModifyReplicaSynchronization ReplicationService: %(service)s  Operazione:"
+" 8  Sincronizzazione: %(sync_name)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:296
 #, python-format
@@ -5931,6 +6138,8 @@ msgid ""
 "Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu"
 msgstr ""
+"Creazione volume dall'istantanea: Volume: %(volumename)s  Istantanea: "
+"%(snapshotname)s  Codice di ritorno: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:305
 #, python-format
@@ -5938,6 +6147,9 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s.  Return code: %(rc)lu.  Error: %(error)s"
 msgstr ""
+"Errore creazione volume dall'istantanea: Volume: %(volumename)s  "
+"Istantanea: %(snapshotname)s.  Codice di ritorno: %(rc)lu.  Errore: "
+"%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:317
 #, python-format
@@ -5945,10 +6157,12 @@ msgid ""
 "Leaving create_volume_from_snapshot: Volume: %(volumename)s Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu."
 msgstr ""
+"Abbandono di create_volume_from_snapshot: Volume: %(volumename)s "
+"Istantanea: %(snapshotname)s  Codice di ritorno: %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:328
 msgid "Entering create_cloned_volume."
-msgstr ""
+msgstr "Immissione di create_cloned_volume."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:333
 #, python-format
@@ -5956,6 +6170,8 @@ msgid ""
 "Create a Clone from Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s"
 msgstr ""
+"Crea un clone dal volume: Volume: %(volumename)s  Volume di origine: "
+"%(srcname)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:343
 #, python-format
@@ -5963,6 +6179,9 @@ msgid ""
 "Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
 "  Source Instance: %(src_instance)s  Storage System: %(storage_system)s."
 msgstr ""
+"Crea volume clonato: Volume: %(volumename)s  Volume di origine: "
+"%(srcname)s  Istanza di origine: %(src_instance)s  Sistema di archivio: "
+"%(storage_system)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:353
 #, python-format
@@ -5970,6 +6189,9 @@ msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s. Cannot find Replication Service to create cloned volume."
 msgstr ""
+"Errore creazione volume clonato: Volume: %(volumename)s  Volume di "
+"origine: %(srcname)s. Impossibile trovare il servizio di replica per "
+"creare il volume clonato."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:362
 #, python-format
@@ -5979,6 +6201,10 @@ msgid ""
 "ElementName: %(elementname)s  SyncType: 8  SourceElement: "
 "%(sourceelement)s"
 msgstr ""
+"Crea volume clonato: Volume: %(volumename)s  Volume di origine: "
+"%(srcname)s  Metodo: CreateElementReplica  ReplicationService: "
+"%(service)s  ElementName: %(elementname)s  SyncType: 8  SourceElement: "
+"%(sourceelement)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:383
 #, python-format
@@ -5986,6 +6212,8 @@ msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source "
 "Volume:%(srcname)s.  Return code: %(rc)lu.Error: %(error)s"
 msgstr ""
+"Errore creazione volume clonato: Volume: %(volumename)s  Volume di "
+"origine: %(srcname)s.  Codice di ritorno: %(rc)lu.  Errore: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:409
 #, python-format
@@ -5994,6 +6222,9 @@ msgid ""
 "  Successfully cloned volume from source volume.  Finding the clone "
 "relationship."
 msgstr ""
+"Crea volume clonato: Volume: %(volumename)s  Volume di origine: "
+"%(srcname)s.  Volume clonato correttamente dal volume di origine.  "
+"Ricerca della relazione del clone."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:421
 #, python-format
@@ -6003,6 +6234,10 @@ msgid ""
 "ReplicationService: %(service)s  Operation: 8  Synchronization: "
 "%(sync_name)s"
 msgstr ""
+"Crea volume clonato: Volume: %(volumename)s  Volume di origine: "
+"%(srcname)s.  Rimuovere la relazione clonata. Metodo: "
+"ModifyReplicaSynchronization ReplicationService: %(service)s  Operazione:"
+" 8  Sincronizzazione: %(sync_name)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:437
 #, python-format
@@ -6010,6 +6245,8 @@ msgid ""
 "Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
 "  Return code: %(rc)lu"
 msgstr ""
+"Crea volume clonato: Volume: %(volumename)s  Volume di origine: "
+"%(srcname)s  Codice di ritorno: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:446
 #, python-format
@@ -6017,6 +6254,8 @@ msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s.  Return code: %(rc)lu.  Error: %(error)s"
 msgstr ""
+"Errore creazione volume clonato: Volume: %(volumename)s  Volume di "
+"origine: %(srcname)s.  Codice di ritorno: %(rc)lu.  Errore: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:458
 #, python-format
@@ -6024,21 +6263,23 @@ msgid ""
 "Leaving create_cloned_volume: Volume: %(volumename)s Source Volume: "
 "%(srcname)s  Return code: %(rc)lu."
 msgstr ""
+"Abbandona create_cloned_volume: Volume: %(volumename)s Volume di origine:"
+" %(srcname)s  Codice di ritorno: %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:469
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:178
 msgid "Entering delete_volume."
-msgstr ""
+msgstr "Immetti delete_volume."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:471
 #, python-format
 msgid "Delete Volume: %(volume)s"
-msgstr ""
+msgstr "Elimina volume: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:478
 #, python-format
 msgid "Volume %(name)s not found on the array. No volume to delete."
-msgstr ""
+msgstr "Volume %(name)s non trovato nell'array. Nessun volume da eliminare."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:488
 #, python-format
@@ -6046,11 +6287,13 @@ msgid ""
 "Error Delete Volume: %(volumename)s. Storage Configuration Service not "
 "found."
 msgstr ""
+"Errore eliminazione volume: %(volumename)s. Servizio di configurazione "
+"archivio non trovato."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:496
 #, python-format
 msgid "Delete Volume: %(name)s  DeviceID: %(deviceid)s"
-msgstr ""
+msgstr "Elimina volume: %(name)s  Id unità: %(deviceid)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:500
 #, python-format
@@ -6058,6 +6301,8 @@ msgid ""
 "Delete Volume: %(name)s  Method: EMCReturnToStoragePool ConfigServic: "
 "%(service)s  TheElement: %(vol_instance)s"
 msgstr ""
+"Elimina volume: %(name)s  Metodo: EMCReturnToStoragePool ConfigServic: "
+"%(service)s  Elemento: %(vol_instance)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:514
 #, python-format
@@ -6065,28 +6310,30 @@ msgid ""
 "Error Delete Volume: %(volumename)s.  Return code: %(rc)lu.  Error: "
 "%(error)s"
 msgstr ""
+"Errore eliminazione volume: %(volumename)s.  Codice di ritorno: %(rc)lu."
+"  Errore: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:523
 #, python-format
 msgid "Leaving delete_volume: %(volumename)s  Return code: %(rc)lu"
-msgstr ""
+msgstr "Abbandona delete_volume: %(volumename)s  Codice di ritorno: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:530
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:275
 msgid "Entering create_snapshot."
-msgstr ""
+msgstr "Immetti create_snapshot."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:534
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:278
 #, python-format
 msgid "Create snapshot: %(snapshot)s: volume: %(volume)s"
-msgstr ""
+msgstr "Crea istantanea: %(snapshot)s: volume: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:544
 #: cinder/volume/drivers/emc/emc_smis_common.py:972
 #, python-format
 msgid "Device ID: %(deviceid)s: Storage System: %(storagesystem)s"
-msgstr ""
+msgstr "ID unità: %(deviceid)s: sistema di archivio: %(storagesystem)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:551
 #: cinder/volume/drivers/emc/emc_smis_common.py:553
@@ -6094,6 +6341,8 @@ msgstr ""
 #, python-format
 msgid "Cannot find Replication Service to create snapshot for volume %s."
 msgstr ""
+"Impossibile trovare il servizio di replica per creare l'istantanea per il"
+" volume %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:558
 #, python-format
@@ -6102,6 +6351,10 @@ msgid ""
 "Source: %(volume)s  Replication Service: %(service)s  ElementName: "
 "%(elementname)s  Sync Type: 7  SourceElement: %(sourceelement)s."
 msgstr ""
+"Crea istantanea:  Metodo: CreateElementReplica: Destinazione: "
+"%(snapshot)s  Origine: %(volume)s Servizio di replica: %(service)s  Nome "
+"elemento: %(elementname)s  Tipo di sincronizzazione: 7  Elemento origine:"
+" %(sourceelement)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:574
 #, python-format
@@ -6109,6 +6362,8 @@ msgid ""
 "Create Snapshot: Volume: %(volumename)s  Snapshot: %(snapshotname)s  "
 "Return code: %(rc)lu"
 msgstr ""
+"Crea istantanea: Volume: %(volumename)s  Istantanea: %(snapshotname)s  "
+"Codice di ritorno: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:583
 #, python-format
@@ -6123,17 +6378,19 @@ msgid ""
 "Leaving create_snapshot: Snapshot: %(snapshot)s Volume: %(volume)s  "
 "Return code: %(rc)lu."
 msgstr ""
+"create_snapshot viene abbandonato: Istantanea: %(snapshot)s Volume: "
+"%(volume)s  Codice di ritorno: %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:613
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:302
 msgid "Entering delete_snapshot."
-msgstr ""
+msgstr "Immissione di delete_snapshot."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:617
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:306
 #, python-format
 msgid "Delete Snapshot: %(snapshot)s: volume: %(volume)s"
-msgstr ""
+msgstr "Elimina istantanea: %(snapshot)s: volume: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:623
 #, python-format
@@ -6141,6 +6398,8 @@ msgid ""
 "Delete Snapshot: %(snapshot)s: volume: %(volume)s. Finding "
 "StorageSychronization_SV_SV."
 msgstr ""
+"Elimina istantanea: %(snapshot)s: volume: %(volume)s. Ricerca di "
+"StorageSychronization_SV_SV."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:631
 #, python-format
@@ -6148,6 +6407,8 @@ msgid ""
 "Snapshot: %(snapshot)s: volume: %(volume)s not found on the array. No "
 "snapshot to delete."
 msgstr ""
+"Istantanea: %(snapshot)s: volume: %(volume)s non trovato nell'array. "
+"Nessuna istantanea da eliminare."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:646
 #, python-format
@@ -6156,6 +6417,9 @@ msgid ""
 "ModifyReplicaSynchronization:  Replication Service: %(service)s  "
 "Operation: 19  Synchronization: %(sync_name)s."
 msgstr ""
+"Elimina istantanea: eDestinazione: %(snapshot)s  Origine: %(volume)s.  "
+"Metodo: ModifyReplicaSynchronization:  Servizio di replica: %(service)s  "
+"Operazione: 19  Sincronizzazione: %(sync_name)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:662
 #, python-format
@@ -6163,6 +6427,8 @@ msgid ""
 "Delete Snapshot: Volume: %(volumename)s  Snapshot: %(snapshotname)s  "
 "Return code: %(rc)lu"
 msgstr ""
+"Elimina istantanea: Volume: %(volumename)s  Istantanea: %(snapshotname)s"
+"  Codice di ritorno: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:671
 #, python-format
@@ -6170,6 +6436,8 @@ msgid ""
 "Error Delete Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s. Return code: %(rc)lu. Error: %(error)s"
 msgstr ""
+"Errore eliminazione istantanea: Volume: %(volumename)s  Istantanea: "
+"%(snapshotname)s. Codice di ritorno: %(rc)lu. Errore: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:696
 #: cinder/volume/drivers/emc/emc_smis_common.py:711
@@ -6197,6 +6465,8 @@ msgid ""
 "Leaving delete_snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu."
 msgstr ""
+"delete_snapshot viene abbandonato: Volume: %(volumename)s  Istantanea: "
+"%(snapshotname)s  Codice di ritorno: %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:745
 #, python-format
@@ -6204,21 +6474,23 @@ msgid ""
 "ExposePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(lun_name)s"
 "  InitiatorPortIDs: %(initiator)s  DeviceAccesses: 2"
 msgstr ""
+"ExposePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(lun_name)s"
+"  InitiatorPortIDs: %(initiator)s  DeviceAccesses: 2"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:760
 #, python-format
 msgid "ExposePaths parameter LunMaskingSCSIProtocolController: %(lunmasking)s"
-msgstr ""
+msgstr "Parametro ExposePaths LunMaskingSCSIProtocolController: %(lunmasking)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:771
 #, python-format
 msgid "Error mapping volume %s."
-msgstr ""
+msgstr "Errore associazione volume %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:775
-#, fuzzy, python-format
+#, python-format
 msgid "ExposePaths for volume %s completed successfully."
-msgstr "volume %s: rimosso con successo"
+msgstr "ExposePaths per il volume %s completata correttamente."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:791
 #, python-format
@@ -6226,16 +6498,18 @@ msgid ""
 "HidePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(device_id)s  "
 "LunMaskingSCSIProtocolController: %(lunmasking)s"
 msgstr ""
+"HidePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(device_id)s  "
+"LunMaskingSCSIProtocolController: %(lunmasking)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:804
 #, python-format
 msgid "Error unmapping volume %s."
-msgstr ""
+msgstr "Errore annullamento associazione volume %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:808
-#, fuzzy, python-format
+#, python-format
 msgid "HidePaths for volume %s completed successfully."
-msgstr "volume %s: rimosso con successo"
+msgstr "HidePaths per il volume %s completata correttamente."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:821
 #, python-format
@@ -6243,16 +6517,18 @@ msgid ""
 "AddMembers: ConfigServicie: %(service)s  MaskingGroup: %(masking_group)s"
 "  Members: %(vol)s"
 msgstr ""
+"AddMembers: ConfigServicie: %(service)s  MaskingGroup: %(masking_group)s"
+"  Membri: %(vol)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:836
 #, python-format
 msgid "Error mapping volume %(vol)s. %(error)s"
-msgstr ""
+msgstr "Errore associazione volume %(vol)s. %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:841
-#, fuzzy, python-format
+#, python-format
 msgid "AddMembers for volume %s completed successfully."
-msgstr "volume %s: rimosso con successo"
+msgstr "AddMembers per il volume %s completato correttamente."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:854
 #, python-format
@@ -6260,52 +6536,58 @@ msgid ""
 "RemoveMembers: ConfigServicie: %(service)s  MaskingGroup: "
 "%(masking_group)s  Members: %(vol)s"
 msgstr ""
+"RemoveMembers: ConfigServicie: %(service)s  MaskingGroup: "
+"%(masking_group)s  Members: %(vol)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:867
 #, python-format
 msgid "Error unmapping volume %(vol)s. %(error)s"
-msgstr ""
+msgstr "Errore annullamento associazione volume %(vol)s. %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:872
-#, fuzzy, python-format
+#, python-format
 msgid "RemoveMembers for volume %s completed successfully."
-msgstr "volume %s: rimosso con successo"
+msgstr "RemoveMembers per il volume %s completato correttamente."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:878
 #, python-format
 msgid "Map volume: %(volume)s"
-msgstr ""
+msgstr "Associa volume: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:887
 #: cinder/volume/drivers/emc/emc_smis_common.py:917
 #, python-format
 msgid "Cannot find Controller Configuration Service for storage system %s"
 msgstr ""
+"Impossibile trovare il servizio configurazione controllore per il sistema"
+" di archivio %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:901
 #, python-format
 msgid "Unmap volume: %(volume)s"
-msgstr ""
+msgstr "Annulla associazione volume: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:907
 #, python-format
 msgid "Volume %s is not mapped. No volume to unmap."
 msgstr ""
+"Il volume %s non è associato. Nessun volume di cui annullare "
+"l'associazione."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:931
 #, python-format
 msgid "Initialize connection: %(volume)s"
-msgstr ""
+msgstr "Inizializza connessione: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:937
 #, python-format
 msgid "Volume %s is already mapped."
-msgstr ""
+msgstr "Il volume %s è già associato."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:949
 #, python-format
 msgid "Terminate connection: %(volume)s"
-msgstr ""
+msgstr "Termina connessione: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:956
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:197
@@ -6361,16 +6643,16 @@ msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1063
 msgid "Storage type not found."
-msgstr ""
+msgstr "Tipo di archivio non trovato."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1079
 #, python-format
 msgid "Found Masking View: %s"
-msgstr ""
+msgstr "Trovata vista di mascheramento: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1082
 msgid "Masking View not found."
-msgstr ""
+msgstr "Vista di mascheramento non trovata."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1097
 #, python-format
@@ -6383,76 +6665,75 @@ msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1122
 msgid "Ecom user not found."
-msgstr ""
+msgstr "Utente Ecom non trovato."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1142
 #, python-format
 msgid "Ecom IP: %(ecomIp)s Port: %(ecomPort)s"
-msgstr ""
+msgstr "IP Ecom: %(ecomIp)s Porta: %(ecomPort)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1146
 msgid "Ecom server not found."
-msgstr ""
+msgstr "Server Ecom non trovato."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1153
-#, fuzzy
 msgid "Cannot connect to ECOM server"
-msgstr "Riconnesso alla coda"
+msgstr "Impossibile connettersi al server ECOM"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1165
 #, python-format
 msgid "Found Replication Service: %s"
-msgstr ""
+msgstr "Servizio di replica non trovato: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1178
 #, python-format
 msgid "Found Storage Configuration Service: %s"
-msgstr ""
+msgstr "Trovato servizio di configurazione archivio: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1191
 #, python-format
 msgid "Found Controller Configuration Service: %s"
-msgstr ""
+msgstr "Trovato servizio di configurazione controllore: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1204
 #, python-format
 msgid "Found Storage Hardware ID Management Service: %s"
-msgstr ""
+msgstr "Trovato servizio di gestione ID hardware dell'archivio: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1248
 #, python-format
 msgid "Pool %(storage_type)s is not found."
-msgstr ""
+msgstr "Il pool %(storage_type)s non è stato trovato."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1254
 #, python-format
 msgid "Storage system not found for pool %(storage_type)s."
-msgstr ""
+msgstr "Impossibile trovare il sistema di archivio per il pool %(storage_type)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1260
 #, python-format
 msgid "Pool: %(pool)s  SystemName: %(systemname)s."
-msgstr ""
+msgstr "Pool: %(pool)s  SystemName: %(systemname)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1277
 #, python-format
 msgid "Pool name: %(poolname)s  System name: %(systemname)s."
-msgstr ""
+msgstr "Nome pool: %(poolname)s  Nome sistema: %(systemname)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1292
 #, python-format
 msgid "Volume %(volumename)s not found on the array."
-msgstr ""
+msgstr "Volume %(volumename)s non trovato nell'array."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1295
 #, python-format
 msgid "Volume name: %(volumename)s  Volume instance: %(vol_instance)s."
-msgstr ""
+msgstr "Nome volume: %(volumename)s  Istanza del volume: %(vol_instance)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1310
 #, python-format
 msgid "Source: %(volumename)s  Target: %(snapshotname)s."
-msgstr ""
+msgstr "Origine: %(volumename)s  Destinazione: %(snapshotname)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1322
 #, python-format
@@ -6460,6 +6741,8 @@ msgid ""
 "Source: %(volumename)s  Target: %(snapshotname)s. Storage Synchronized "
 "not found. "
 msgstr ""
+"Origine: %(volumename)s  Destinazione: %(snapshotname)s. Archivio "
+"sincronizzato non trovato. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1327
 #, python-format
@@ -6467,16 +6750,18 @@ msgid ""
 "Storage system: %(storage_system)s  Storage Synchronized instance: "
 "%(sync)s."
 msgstr ""
+"Sistema di archivio: %(storage_system)s  Istanza archivio sincronizzato: "
+"%(sync)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1353
 #, python-format
 msgid "Error finding %s."
-msgstr ""
+msgstr "Errore nella ricerca di %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1357
 #, python-format
 msgid "Found %(name)s: %(initiator)s."
-msgstr ""
+msgstr "Trovato %(name)s: %(initiator)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1417
 #, python-format
@@ -6484,6 +6769,8 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage system %(storage_system)s "
 "and initiator %(initiator)s is  %(ctrl)s."
 msgstr ""
+"LunMaskingSCSIProtocolController per il sistema di archivio "
+"%(storage_system)s e per l'iniziatore %(initiator)s è  %(ctrl)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1458
 #, python-format
@@ -6491,6 +6778,8 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage volume %(vol)s and initiator"
 " %(initiator)s is  %(ctrl)s."
 msgstr ""
+"LunMaskingSCSIProtocolController per il volume di archivio %(vol)s e per "
+"l'iniziatore %(initiator)s è  %(ctrl)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1472
 #, python-format
@@ -6498,6 +6787,8 @@ msgid ""
 "Volume %(name)s not found on the array. Cannot determine if there are "
 "volumes mapped."
 msgstr ""
+"Volume %(name)s non trovato nell'array. Impossibile determinare se vi "
+"sono volumi associati."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1484
 #, python-format
@@ -6505,6 +6796,8 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage system %(storage)s and "
 "%(connector)s is %(ctrl)s."
 msgstr ""
+"LunMaskingSCSIProtocolController per il sistema di archiviazione "
+"%(storage)s e per %(connector)s è %(ctrl)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1496
 #, python-format
@@ -6512,11 +6805,13 @@ msgid ""
 "Found %(numVolumesMapped)d volumes on storage system %(storage)s mapped "
 "to %(initiator)s."
 msgstr ""
+"I volumi %(numVolumesMapped)d sono stati trovati nel sistema di "
+"archiviazione %(storage)s associato a %(initiator)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1531
 #, python-format
 msgid "Available device number on %(storage)s: %(device)s."
-msgstr ""
+msgstr "Numero unità disponibile in %(storage)s: %(device)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1556
 #, python-format
@@ -6528,27 +6823,29 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_smis_common.py:1592
 #, python-format
 msgid "Device number not found for volume %(volumename)s %(vol_instance)s."
-msgstr ""
+msgstr "Numero unità non trovato per il volume %(volumename)s %(vol_instance)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1597
 #, python-format
 msgid "Found device number %(device)d for volume %(volumename)s %(vol_instance)s."
 msgstr ""
+"Trovato numero unità %(device)d per il volume %(volumename)s "
+"%(vol_instance)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1607
 #, python-format
 msgid "Device info: %(data)s."
-msgstr ""
+msgstr "Informazioni sull'unità: %(data)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1629
 #, python-format
 msgid "Masking view: %(view)s DeviceMaskingGroup: %(masking)s."
-msgstr ""
+msgstr "Vista di mascheramento: %(view)s DeviceMaskingGroup: %(masking)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1651
 #, python-format
 msgid "Found Storage Processor System: %s"
-msgstr ""
+msgstr "Trovato sistema del processore archiviazione: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1679
 #, python-format
@@ -6556,10 +6853,12 @@ msgid ""
 "iSCSIProtocolEndpoint for storage system %(storage_system)s and SP %(sp)s"
 " is  %(endpoint)s."
 msgstr ""
+"iSCSIProtocolEndpoint per il sistema di archiviazione %(storage_system)s "
+"e per SP %(sp)s è %(endpoint)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1720
 msgid "Error finding Storage Hardware ID Service."
-msgstr ""
+msgstr "Errore durante la ricerca del servizio archivio ID hardware."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1726
 #, python-format
@@ -6567,41 +6866,45 @@ msgid ""
 "EMCGetTargetEndpoints: Service: %(service)s  Storage HardwareIDs: "
 "%(hardwareids)s."
 msgstr ""
+"EMCGetTargetEndpoints: Servizio: %(service)s archivio ID hardware: "
+"%(hardwareids)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1738
 msgid "Error finding Target WWNs."
-msgstr ""
+msgstr "Errore durante la ricerca della destinazione WWN."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1748
 #, python-format
 msgid "Add target WWN: %s."
-msgstr ""
+msgstr "Aggiungi destinazione WWN: %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1750
 #, python-format
 msgid "Target WWNs: %s."
-msgstr ""
+msgstr "Destinazione WWN: %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1766
 #, python-format
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
-msgstr ""
+msgstr "L'archivio ID hardware per %(wwpns)s è %(foundInstances)s."
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
+"Endpoint ISCSI non trovato per SP %(sp)s nel sistema di archiviazione "
+"%(storage)s."
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
-msgstr ""
+msgstr "Proprietà ISCSI: %s"
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:77
 msgid "Pool name is not specified."
@@ -6682,7 +6985,7 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:251
 #, python-format
 msgid "create_export: Volume: %(volume)s  Device ID: %(device_id)s"
-msgstr ""
+msgstr "create_export: Volume: %(volume)s  ID unità: %(device_id)s"
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:292
 #, python-format
@@ -6882,93 +7185,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7056,7 +7359,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7123,7 +7426,7 @@ msgstr ""
 #: cinder/volume/drivers/huawei/rest_common.py:327
 #, python-format
 msgid "create_snapshot:snapshot name:%(snapshot)s, volume name:%(volume)s."
-msgstr ""
+msgstr "create_snapshot: nome istantanea: %(snapshot)s, nome volume: %(volume)s."
 
 #: cinder/volume/drivers/huawei/rest_common.py:354
 #, python-format
@@ -7166,7 +7469,7 @@ msgstr ""
 #: cinder/volume/drivers/huawei/rest_common.py:874
 #, python-format
 msgid "terminate_connection:volume name: %(volume)s, initiator name: %(ini)s."
-msgstr ""
+msgstr "terminate_connection: nome volume: %(volume)s, nome iniziatore: %(ini)s."
 
 #: cinder/volume/drivers/huawei/rest_common.py:937
 #, python-format
@@ -7225,7 +7528,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7256,12 +7559,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7294,7 +7597,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7305,111 +7608,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7417,77 +7720,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7641,97 +7944,97 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
-msgstr ""
+msgstr "%s non è impostato"
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:143
 msgid "enter: do_setup"
-msgstr ""
+msgstr "immettere: do_setup"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:153
 #, python-format
@@ -7744,11 +8047,11 @@ msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:214
 msgid "leave: do_setup"
-msgstr ""
+msgstr "abbandonare: do_setup"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:218
 msgid "enter: check_for_setup_error"
-msgstr ""
+msgstr "immettere: check_for_setup_error"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:222
 msgid "Unable to determine system name"
@@ -7763,6 +8066,8 @@ msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
+"La password o la chiave privata SSH è obbligatoria per l'autenticazione: "
+"impostare l'opzione san_password o san_private_key"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:246
 #, python-format
@@ -7770,15 +8075,17 @@ msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
+"Valore non consentito %d specificato per storwize_svc_flashcopy_timeout: "
+"i valori validi sono compresi tra 0 e 600"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
 msgid "leave: check_for_setup_error"
-msgstr ""
+msgstr "abbandonare: check_for_setup_error"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:264
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
-msgstr ""
+msgstr "ensure_export: Volume %s non trovato nell'archivio"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:283
 msgid "The connector does not contain the required information."
@@ -7787,7 +8094,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:307
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "immetti: initialize_connection: volume %(vol)s con connettore %(conn)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:338
 msgid "CHAP secret exists for host but CHAP is disabled"
@@ -7796,17 +8103,17 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:343
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
-msgstr ""
+msgstr "initialize_connection: impossibile ottenre gli attributi per il volume %s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:355
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
-msgstr ""
+msgstr "Il nome colonna previsto non è stato trovato in lsvdisk: %s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:357
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
-msgstr ""
+msgstr "initialize_connection: manca l'attributo del volume per il volume %s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:374
 #, python-format
@@ -7814,11 +8121,15 @@ msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
+"initialize_connection: Nessun nodo trovato nel gruppo I/O %(gid)s per il "
+"volume %(vol)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
+"initialize_connection: non è stato trovato un nodo preferito per il "
+"volume %s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:406
 msgid ""
@@ -7826,14 +8137,23 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
+"initialize_connection: impossibile raccogliere le proprietà di ritorno "
+"per il volume %(vol)s e il connettore %(conn)s.\n"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7841,101 +8161,116 @@ msgid ""
 " connector %(conn)s\n"
 " properties: %(prop)s"
 msgstr ""
+"abbandonare: initialize_connection:\n"
+" volume: %(vol)s\n"
+" connettore %(conn)s\n"
+" proprietà: %(prop)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "immetti: terminate_connection: volume %(vol)s con connettore %(conn)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
+"abbandonare: terminate_connection: volume %(vol)s con il connettore "
+"%(conn)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
+"create_volume_from_snapshot: la dimensione dell'origine e della "
+"destinazione sono differenti."
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
+"create_cloned_volume: la dimensione dell'origine e della destinazione "
+"sono differenti."
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7943,31 +8278,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
-msgstr ""
+msgstr "Impossibile ottenere i dati di pool dall'archivio"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8070,26 +8412,34 @@ msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
+"Valore non consentito specificato per storwize_svc_vol_rsize: impostare "
+"una percentuale (0-100) o su -1"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:388
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
+"Valore non consentito specificato per storwize_svc_vol_warning: impostare"
+" una percentuale (0-100)"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:395
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
+"Valore non consentito specificato per storwize_svc_vol_grainsize: "
+"impostare su 32, 64, 128 o 256"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
 msgid "System does not support compression"
-msgstr ""
+msgstr "Il sistema non supporta la compressione"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:407
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
+"Se la compressione è impostata su True, anche rsize deve essere impostato"
+" (non uguale a -1)"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:413
 #, python-format
@@ -8097,6 +8447,8 @@ msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
+"Valore %(prot)s non consentito specificato per "
+"storwize_svc_connection_protocol: i valori validi sono %(enabled)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:422
 #, python-format
@@ -8115,7 +8467,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:504
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
-msgstr ""
+msgstr "abbandonare: _create_vdisk: volume %s "
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:531
 #, python-format
@@ -8151,7 +8503,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:601
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
-msgstr ""
+msgstr "Vdisk %(name)s non è coinvolto nell'associazione %(src)s -> %(tgt)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:637
 #, python-format
@@ -8188,15 +8540,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8208,18 +8567,17 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:213
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:250
-#, fuzzy, python-format
+#, python-format
 msgid ""
 "CLI Exception output:\n"
 " command: %(cmd)s\n"
 " stdout: %(out)s\n"
 " stderr: %(err)s"
 msgstr ""
-"%(description)s\n"
-"Comando: %(cmd)s\n"
-"Exit code: %(exit_code)s\n"
-"Stdout: %(stdout)r\n"
-"Stderr: %(stderr)r"
+"Output eccezione CLI:\n"
+" comando: %(cmd)s\n"
+" stdout: %(out)s\n"
+" stderr: %(err)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:53
 #, python-format
@@ -8251,12 +8609,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -8327,36 +8685,36 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:69
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
-msgstr ""
+msgstr "Nessuna proprietà di metadati %(prop)s definita per LUN %(name)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:105
 #, python-format
 msgid "Using NetApp filer: %s"
-msgstr ""
+msgstr "Utilizzo di NetApp filer: %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:150
 msgid "Success getting LUN list from server"
-msgstr ""
+msgstr "Ottenuto elenco LUN dal server con esito positivo"
 
 #: cinder/volume/drivers/netapp/iscsi.py:166
 #, python-format
 msgid "Created LUN with name %s"
-msgstr ""
+msgstr "LUN creato con il nome %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:175
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
-msgstr ""
+msgstr "Nessuna voce nella tabella LUN per volume/istantanea %(name)s."
 
 #: cinder/volume/drivers/netapp/iscsi.py:191
 #, python-format
 msgid "Destroyed LUN %s"
-msgstr ""
+msgstr "Distrutto LUN %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:227
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
-msgstr ""
+msgstr "LUN %(name)s associato a all'iniziatore %(initiator_name)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
@@ -8368,22 +8726,22 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:238
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
-msgstr ""
+msgstr "Impossibile ottenere i dettagli della destinazione LUN per LUN %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:249
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
-msgstr ""
+msgstr "Impossibile ottenere il portale di destinazione per LUN %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:252
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
-msgstr ""
+msgstr "Impossibile ottenere IQN di destinazione per LUN %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:290
-#, fuzzy, python-format
+#, python-format
 msgid "Snapshot %s deletion successful"
-msgstr "volume %s: rimosso con successo"
+msgstr "Eliminazione istantanea %s eseguita correttamente"
 
 #: cinder/volume/drivers/netapp/iscsi.py:310
 #: cinder/volume/drivers/netapp/iscsi.py:557
@@ -8396,21 +8754,23 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:325
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
-msgstr ""
+msgstr "Annullamento associazione LUN %(name)s dall'iniziatore %(initiator_name)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:414
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
-msgstr ""
+msgstr "Errore associazione lun. Codice :%(code)s, Messaggio:%(message)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:433
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
+"Errore annullamento associazione lun. Codice :%(code)s, Messaggio: "
+"%(message)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:503
 msgid "Object is not a NetApp LUN."
-msgstr ""
+msgstr "L'oggetto non è un NetApp LUN."
 
 #: cinder/volume/drivers/netapp/iscsi.py:535
 #, python-format
@@ -8509,12 +8869,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:841
 #, python-format
 msgid "No iscsi service found for vserver %s"
-msgstr ""
+msgstr "Nessun servizio iscsi trovato per vserver %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1008
 #, python-format
 msgid "Cloned LUN with new name %s"
-msgstr ""
+msgstr "LUN clonato con il nuovo nome %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1012
 #, python-format
@@ -8537,9 +8897,9 @@ msgid "Api version could not be determined."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:1190
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get vol with required size for volume: %s"
-msgstr "Impossibile localizzare il volume %s"
+msgstr "Impossibile ottenere vol con la dimensione richiesta per il volume: %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1299
 #, python-format
@@ -8549,12 +8909,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:1443
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
-msgstr ""
+msgstr "Operazione clone con src %(name)s e dest %(new_name)s completata"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1446
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
-msgstr ""
+msgstr "Operazione clone con src %(name)s e dest %(new_name)s non riuscita"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1509
 msgid "Volume refresh job already running. Returning..."
@@ -8693,7 +9053,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:460
 #, python-format
 msgid "Converted to raw, but format is now %s"
-msgstr ""
+msgstr "Convertito in non elaborato, ma il formato ora è %s"
 
 #: cinder/volume/drivers/netapp/nfs.py:470
 #, python-format
@@ -8771,7 +9131,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:866
 #, python-format
 msgid "No interface found on cluster for ip %s"
-msgstr ""
+msgstr "Nessuna interfaccia trovata nel cluster per l'ip %s"
 
 #: cinder/volume/drivers/netapp/nfs.py:907
 #, python-format
@@ -8917,11 +9277,13 @@ msgstr ""
 #, python-format
 msgid "No storage path found for export path %s"
 msgstr ""
+"Nessun percorso di archiviazione trovato per il percorso di esportazione "
+"%s"
 
 #: cinder/volume/drivers/netapp/nfs.py:1359
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
-msgstr ""
+msgstr "Clonazione con src %(src_path)s, dest %(dest_path)s"
 
 #: cinder/volume/drivers/netapp/ssc_utils.py:241
 #, python-format
@@ -9290,7 +9652,7 @@ msgstr ""
 #: cinder/volume/drivers/nexenta/iscsi.py:105
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
-msgstr ""
+msgstr "Volume %s non esiste in Nexenta SA"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:151
 #, python-format
@@ -9366,10 +9728,12 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
+"Ignorato errore creazione destinazione \"%s\" durante il controllo "
+"dell'esportazione"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:486
 #, python-format
@@ -9397,6 +9761,9 @@ msgid ""
 "Got error trying to destroy target group %(target_group)s, assuming it is"
 " already gone: %(exc)s"
 msgstr ""
+"Errore ricevuto durante il tentativo di distruggere il gruppo di "
+"destinazione %(target_group)s, probabilmente è già stato eliminato: "
+"%(exc)s"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:559
 #, python-format
@@ -9404,29 +9771,31 @@ msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
 "gone: %(exc)s"
 msgstr ""
+"Ricevuto errore durante il tentativo di eliminare la destinazione "
+"%(target)s, probabilmente è già stato eliminato: %(exc)s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:83
 #, python-format
 msgid "Sending JSON data: %s"
-msgstr ""
+msgstr "Invio dei dati JSON: %s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:88
 msgid "No headers in server response"
-msgstr ""
+msgstr "Nessuna intestazione nella risposta del server"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:89
 msgid "Bad response from server"
-msgstr ""
+msgstr "Risposta non valida dal server"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:90
 #, python-format
 msgid "Auto switching to HTTPS connection to %s"
-msgstr ""
+msgstr "Switch automatico alla connessione HTTPS per %s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:96
-#, fuzzy, python-format
+#, python-format
 msgid "Got response: %s"
-msgstr "risposta %s"
+msgstr "Risposta ricevuta: %s"
 
 #: cinder/volume/drivers/nexenta/nfs.py:85
 #, python-format
@@ -9489,290 +9858,304 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
-msgstr ""
+msgstr "Specifica san_password o san_private_key"
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
-msgstr ""
+msgstr "san_ip deve essere impostato"
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
-msgstr ""
+msgstr "Impossibile esaminare l'output vista elenco: %s"
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
-msgstr ""
+msgstr "LUID non trovato per %(zfs_poolname)s. Output=%(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
-msgstr ""
+msgstr "CPG (%s) non esiste nell'array"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
+"È necessario specificare un utente tipo %(valid)s valido, il valore "
+"'%(persona)s' non è valido."
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
+"È necessario specificare un tipo di provisioning %(valid)s valido, il "
+"valore '%(prov)s' non è valido."
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
-msgstr ""
+msgstr "Il volume (%s) esiste già nell'array"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
-msgstr ""
+msgstr "Il comando CLIQ ha restituito %s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, python-format
 msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
 msgstr ""
+"Risposta non valida per il comando CLIQ %(verb)s %(cliq_args)s. "
+"Result=%(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, python-format
 msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
 msgstr ""
+"Errore durante l'esecuzione del comando CLIQ %(verb)s %(cliq_args)s.  "
+"Result=%(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, python-format
 msgid ""
 "Unexpected number of virtual ips for cluster  %(cluster_name)s. "
 "Result=%(_xml)s"
 msgstr ""
+"Numero non previsto di ip virtuali per il cluster %(cluster_name)s. "
+"Result=%(_xml)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
+msgstr "Informazioni sul volume: %(volume_name)s => %(volume_attributes)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
-msgstr ""
+msgstr "local_path non supportato"
 
 #: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:75
 #, python-format
@@ -10164,7 +10547,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10324,7 +10707,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10444,62 +10827,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10725,7 +11108,7 @@ msgstr ""
 
 #: cinder/volume/drivers/vmware/volumeops.py:744
 msgid "Copying disk data before snapshot of the VM"
-msgstr ""
+msgstr "Copia dei dati del disco prima dell'istantanea della VM"
 
 #: cinder/volume/drivers/vmware/volumeops.py:754
 #, python-format
@@ -10784,7 +11167,7 @@ msgstr ""
 #: cinder/volume/drivers/windows/windows.py:102
 #, python-format
 msgid "Creating folder %s "
-msgstr ""
+msgstr "Creazione cartella %s "
 
 #: cinder/volume/drivers/windows/windows_utils.py:47
 #, python-format
@@ -10811,7 +11194,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10819,35 +11202,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10855,42 +11243,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/it_IT/LC_MESSAGES/cinder.po b/cinder/locale/it_IT/LC_MESSAGES/cinder.po
index aea5dd6bd..9fbc7efe9 100644
--- a/cinder/locale/it_IT/LC_MESSAGES/cinder.po
+++ b/cinder/locale/it_IT/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Italian (Italy) translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-05-29 08:13+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Italian (Italy) "
-"(http://www.transifex.com/projects/p/openstack/language/it_IT/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/it_IT/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/ja/LC_MESSAGES/cinder.po b/cinder/locale/ja/LC_MESSAGES/cinder.po
index b724d6d66..65d1fa3ad 100644
--- a/cinder/locale/ja/LC_MESSAGES/cinder.po
+++ b/cinder/locale/ja/LC_MESSAGES/cinder.po
@@ -1,16 +1,20 @@
-# Japanese translation for cinder
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the cinder package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+# Japanese translations for cinder.
+# Copyright (C) 2014 ORGANIZATION
+# This file is distributed under the same license as the cinder project.
 #
-msgid ""
-msgstr ""
-"Project-Id-Version:  cinder\n"
-"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-03-29 06:10+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"
+# Translators:
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011
+# Ryo Fujita <rfujita@redhat.com>, 2013
+# Tomoyuki KATO <tomo@dream.daynight.jp>, 2013
+msgid ""
+msgstr ""
+"Project-Id-Version:  Cinder\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
+"Language-Team: Japanese "
+"(http://www.transifex.com/projects/p/cinder/language/ja/)\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -20,25 +24,25 @@ msgstr ""
 #: cinder/context.py:63
 #, python-format
 msgid "Arguments dropped when creating context: %s"
-msgstr ""
+msgstr "コンテキストの作成中に引数が除去されました: %s"
 
 #: cinder/context.py:107
 #, python-format
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
-msgstr ""
+msgstr "read_deleted には 'no'、'yes'、または 'only' のいずれかのみを指定できます。%r は指定できません"
 
 #: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
-msgstr ""
+msgstr "不明な例外が発生しました。"
 
 #: cinder/exception.py:88
 msgid "Exception in string format operation"
-msgstr ""
+msgstr "ストリング・フォーマットの操作で例外が発生しました"
 
 #: cinder/exception.py:107
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
-msgstr ""
+msgstr "ストレージ・ボリューム・バックエンド API からの不正応答または予期しない応答: %(data)s"
 
 #: cinder/exception.py:112
 #, python-format
@@ -57,21 +61,21 @@ msgstr ""
 
 #: cinder/exception.py:124
 msgid "Not authorized."
-msgstr ""
+msgstr "許可されていません。"
 
 #: cinder/exception.py:129
 msgid "User does not have admin privileges"
-msgstr ""
+msgstr "ユーザーに管理者特権がありません"
 
 #: cinder/exception.py:133
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
-msgstr ""
+msgstr "ポリシーは %(action)s の実行を許可していません。"
 
 #: cinder/exception.py:137
-#, fuzzy, python-format
+#, python-format
 msgid "Not authorized for image %(image_id)s."
-msgstr "メッセージ %s に対するメソッドが存在しません。"
+msgstr "イメージ %(image_id)s では許可されません。"
 
 #: cinder/exception.py:141
 msgid "Volume driver not ready."
@@ -79,7 +83,7 @@ msgstr ""
 
 #: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
-msgstr ""
+msgstr "受け入れられないパラメーター。"
 
 #: cinder/exception.py:150
 #, python-format
@@ -94,15 +98,15 @@ msgstr ""
 #: cinder/exception.py:159
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
-msgstr ""
+msgstr "ボリューム %(volume_id)s はまだ接続されています。最初にボリュームを切り離してください。"
 
 #: cinder/exception.py:163
 msgid "Failed to load data into json format"
-msgstr ""
+msgstr "JSON 形式へのデータのロードに失敗しました"
 
 #: cinder/exception.py:167
 msgid "The results are invalid."
-msgstr ""
+msgstr "結果が無効です。"
 
 #: cinder/exception.py:171
 #, python-format
@@ -122,7 +126,7 @@ msgstr ""
 #: cinder/exception.py:183
 #, python-format
 msgid "Invalid content type %(content_type)s."
-msgstr ""
+msgstr "無効なコンテンツ・タイプ %(content_type)s。"
 
 #: cinder/exception.py:187
 #, python-format
@@ -132,7 +136,7 @@ msgstr ""
 #: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
-msgstr ""
+msgstr "%(err)s"
 
 #: cinder/exception.py:197
 #, python-format
@@ -146,12 +150,12 @@ msgstr ""
 
 #: cinder/exception.py:206
 msgid "Service is unavailable at this time."
-msgstr ""
+msgstr "現在、サービスは使用できません。"
 
 #: cinder/exception.py:210
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
-msgstr ""
+msgstr "イメージ %(image_id)s は受け入れられません: %(reason)s"
 
 #: cinder/exception.py:214
 #, python-format
@@ -161,21 +165,21 @@ msgstr ""
 #: cinder/exception.py:218
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
-msgstr ""
+msgstr "UUID が必要ですが、%(uuid)s を受け取りました。"
 
 #: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
-msgstr ""
+msgstr "リソースが見つかりませんでした。"
 
 #: cinder/exception.py:228
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
-msgstr ""
+msgstr "ボリューム %(volume_id)s が見つかりませんでした。"
 
 #: cinder/exception.py:232
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
-msgstr ""
+msgstr "ボリューム %(volume_id)s にはキー %(metadata_key)s を持つメタデータはありません。"
 
 #: cinder/exception.py:237
 #, python-format
@@ -197,24 +201,24 @@ msgstr ""
 #: cinder/exception.py:250
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
-msgstr ""
+msgstr "スナップショット %(snapshot_id)s にはキー %(metadata_key)s を持つメタデータはありません。"
 
 #: cinder/exception.py:255
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
-msgstr ""
+msgstr "ボリューム・タイプ %(volume_type_id)s が見つかりませんでした。"
 
 #: cinder/exception.py:259
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
-msgstr ""
+msgstr "名前 %(volume_type_name)s を持つボリューム・タイプが見つかりませんでした。"
 
 #: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
-msgstr ""
+msgstr "ボリューム・タイプ %(volume_type_id)s にはキー %(extra_specs_key)s を持つ追加の仕様はありません。"
 
 #: cinder/exception.py:269
 #, python-format
@@ -226,113 +230,113 @@ msgstr ""
 #: cinder/exception.py:274
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
-msgstr ""
+msgstr "スナップショット %(snapshot_id)s が見つかりませんでした。"
 
 #: cinder/exception.py:278
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
-msgstr ""
+msgstr "スナップショットを含むボリューム %(volume_name)s の削除中"
 
 #: cinder/exception.py:282
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
-msgstr ""
+msgstr "従属ボリュームを持つスナップショット %(snapshot_name)s の削除中"
 
 #: cinder/exception.py:287
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
-msgstr ""
+msgstr "ボリューム %(volume_id)s のターゲット ID が見つかりません。"
 
 #: cinder/exception.py:291
 #, python-format
 msgid "Invalid image href %(image_href)s."
-msgstr ""
+msgstr "無効なイメージ href %(image_href)s。"
 
 #: cinder/exception.py:295
 #, python-format
 msgid "Image %(image_id)s could not be found."
-msgstr ""
+msgstr "イメージ %(image_id)s が見つかりませんでした。"
 
 #: cinder/exception.py:299
 #, python-format
 msgid "Service %(service_id)s could not be found."
-msgstr ""
+msgstr "サービス %(service_id)s が見つかりませんでした。"
 
 #: cinder/exception.py:303
 #, python-format
 msgid "Host %(host)s could not be found."
-msgstr ""
+msgstr "ホスト %(host)s が見つかりませんでした。"
 
 #: cinder/exception.py:307
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
-msgstr ""
+msgstr "スケジューラー・ホスト・フィルター %(filter_name)s が見つかりませんでした。"
 
 #: cinder/exception.py:311
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
-msgstr ""
+msgstr "スケジューラー・ホスト Weigher %(weigher_name)s が見つかりませんでした。"
 
 #: cinder/exception.py:315
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
-msgstr ""
+msgstr "ホスト %(host)s 上でバイナリー %(binary)s が見つかりませんでした。"
 
 #: cinder/exception.py:319
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
-msgstr ""
+msgstr "予約の有効期限 %(expire)s が無効です。"
 
 #: cinder/exception.py:323
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
-msgstr ""
+msgstr "変更によって、次のリソースの使用量が 0 未満になります: %(unders)s"
 
 #: cinder/exception.py:328
 msgid "Quota could not be found"
-msgstr ""
+msgstr "割り当て量が見つかりませんでした"
 
 #: cinder/exception.py:332
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
-msgstr ""
+msgstr "不明な割り当て量リソース %(unknown)s。"
 
 #: cinder/exception.py:336
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
-msgstr ""
+msgstr "プロジェクト %(project_id)s の割り当て量が見つかりませんでした。"
 
 #: cinder/exception.py:340
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
-msgstr ""
+msgstr "割り当て量クラス %(class_name)s が見つかりませんでした。"
 
 #: cinder/exception.py:344
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
-msgstr ""
+msgstr "プロジェクト %(project_id)s の割り当て量使用率が見つかりませんでした。"
 
 #: cinder/exception.py:348
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
-msgstr ""
+msgstr "割り当て量の予約 %(uuid)s が見つかりませんでした。"
 
 #: cinder/exception.py:352
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
-msgstr ""
+msgstr "リソースの割り当て量を超過しました: %(overs)s"
 
 #: cinder/exception.py:356
 #, python-format
 msgid "File %(file_path)s could not be found."
-msgstr ""
+msgstr "ファイル %(file_path)s が見つかりませんでした。"
 
 #: cinder/exception.py:365
-#, fuzzy, python-format
+#, python-format
 msgid "Volume Type %(id)s already exists."
-msgstr "グループ %s は既に存在しています。"
+msgstr "ボリューム・タイプ %(id)s は既に存在します。"
 
 #: cinder/exception.py:369
 #, python-format
@@ -347,27 +351,27 @@ msgstr ""
 #: cinder/exception.py:377
 #, python-format
 msgid "Malformed message body: %(reason)s"
-msgstr ""
+msgstr "メッセージ本体の形式に誤りがあります: %(reason)s"
 
 #: cinder/exception.py:381
 #, python-format
 msgid "Could not find config at %(path)s"
-msgstr ""
+msgstr "%(path)s で config が見つかりませんでした"
 
 #: cinder/exception.py:385
-#, fuzzy, python-format
+#, python-format
 msgid "Could not find parameter %(param)s"
-msgstr "ボリューム %s 用の iSCSI エクスポートが見つかりません"
+msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
-msgstr ""
+msgstr "paste アプリケーション '%(name)s' を %(path)s からロードできませんでした"
 
 #: cinder/exception.py:393
 #, python-format
 msgid "No valid host was found. %(reason)s"
-msgstr ""
+msgstr "有効なホストが見つかりませんでした。%(reason)s"
 
 #: cinder/exception.py:402
 #, python-format
@@ -384,44 +388,44 @@ msgstr ""
 #: cinder/exception.py:415
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
-msgstr ""
+msgstr "ボリュームの許容最大数 (%(allowed)d) を超えました"
 
 #: cinder/exception.py:419
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
-msgstr ""
+msgstr "スナップショットの許容最大数 (%(allowed)d) を超えました"
 
 #: cinder/exception.py:423
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
-msgstr ""
+msgstr "名前 %(vol_name)s を持つ複数のボリュームが検出されました"
 
 #: cinder/exception.py:427
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
-msgstr ""
+msgstr "名前 %(name)s および仕様 %(extra_specs)s を使用して volume_type を作成できません"
 
 #: cinder/exception.py:432
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
-msgstr ""
+msgstr "不明またはサポートされないコマンド (%(cmd)s) です"
 
 #: cinder/exception.py:436
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
-msgstr ""
+msgstr "コマンド %(cmd)s への応答の形式が誤っています: %(reason)s"
 
 #: cinder/exception.py:440
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
-msgstr ""
+msgstr "状況=%(status)s で操作が失敗しました。フル・ダンプ: %(data)s"
 
 #: cinder/exception.py:444
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
-msgstr ""
+msgstr "Glance メタデータを更新できません。ボリューム ID %(volume_id)s に対するキー %(key)s が存在します"
 
 #: cinder/exception.py:449
 #, python-format
@@ -449,9 +453,9 @@ msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:469
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to copy image to volume: %(reason)s"
-msgstr "ボリューム %s の存在が確認できません。"
+msgstr ""
 
 #: cinder/exception.py:473
 msgid "Invalid Ceph args provided for backup rbd operation"
@@ -476,16 +480,16 @@ msgstr ""
 #: cinder/exception.py:493
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
-msgstr ""
+msgstr "バックアップ %(backup_id)s が見つかりませんでした。"
 
 #: cinder/exception.py:497
 msgid "Failed to identify volume backend."
 msgstr ""
 
 #: cinder/exception.py:501
-#, fuzzy, python-format
+#, python-format
 msgid "Invalid backup: %(reason)s"
-msgstr "不正なバックエンドです: %s"
+msgstr "無効なバックアップ: %(reason)s"
 
 #: cinder/exception.py:505
 #, python-format
@@ -605,37 +609,37 @@ msgid "Zadara Cinder Driver exception."
 msgstr ""
 
 #: cinder/exception.py:611
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to create server object for initiator %(name)s"
-msgstr "インスタンス %(instance_name)s 用のSR %(sr_ref)s における VDI を作成できません"
+msgstr "イニシエーター %(name)s のサーバー・オブジェクトを作成できません"
 
 #: cinder/exception.py:615
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
-msgstr ""
+msgstr "イニシエーター %(name)s のサーバー・オブジェクトが見つかりません"
 
 #: cinder/exception.py:619
 msgid "Unable to find any active VPSA controller"
-msgstr ""
+msgstr "アクティブな VPSA コントローラーが見つかりません"
 
 #: cinder/exception.py:623
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
-msgstr ""
+msgstr "ボリューム %(name)s の接続の取得に失敗しました"
 
 #: cinder/exception.py:627
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
-msgstr ""
+msgstr "ボリューム %(name)s の接続情報が無効です: %(reason)s"
 
 #: cinder/exception.py:631
 #, python-format
 msgid "Bad HTTP response status %(status)s"
-msgstr ""
+msgstr "HTTP 応答の状況 %(status)s が正しくありません"
 
 #: cinder/exception.py:636
 msgid "Bad response from SolidFire API"
-msgstr ""
+msgstr "SolidFire API からの正しくない応答"
 
 #: cinder/exception.py:640
 msgid "SolidFire Cinder Driver exception"
@@ -644,38 +648,38 @@ msgstr ""
 #: cinder/exception.py:644
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
-msgstr ""
+msgstr "SolidFire API 応答にエラーがあります: data=%(data)s"
 
 #: cinder/exception.py:648
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
-msgstr ""
+msgstr "Solidfire デバイス上でアカウント %(account_name)s を見つけることができません"
 
 #: cinder/exception.py:654
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
-msgstr ""
+msgstr "無効な 3PAR ドメイン: %(err)s"
 
 #: cinder/exception.py:659
 msgid "Unknown NFS exception"
-msgstr ""
+msgstr "不明な NFS 例外"
 
 #: cinder/exception.py:663
 msgid "No mounted NFS shares found"
-msgstr ""
+msgstr "マウントされた NFS 共有が見つかりません"
 
 #: cinder/exception.py:667 cinder/exception.py:680
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
-msgstr ""
+msgstr "%(volume_size)sG をホストできる共有がありません"
 
 #: cinder/exception.py:672
 msgid "Unknown Gluster exception"
-msgstr ""
+msgstr "不明な Gluster 例外"
 
 #: cinder/exception.py:676
 msgid "No mounted Gluster shares found"
-msgstr ""
+msgstr "マウントされた Gluster 共有が見つかりません"
 
 #: cinder/exception.py:684
 #, python-format
@@ -726,44 +730,44 @@ msgstr ""
 
 #: cinder/manager.py:128
 msgid "Notifying Schedulers of capabilities ..."
-msgstr ""
+msgstr "スケジューラーに機能を通知中..."
 
 #: cinder/policy.py:30
 msgid "JSON file representing policy"
-msgstr ""
+msgstr "ポリシーを表す JSON ファイル"
 
 #: cinder/policy.py:33
 msgid "Rule checked when requested rule is not found"
-msgstr ""
+msgstr "要求されたルールが見つからないときに検査するルール"
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -782,17 +786,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
-#, fuzzy, python-format
+#: cinder/service.py:99
+#, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
-msgstr "%(topic)s ノードを開始しています (バージョン %(vcs_string)s)"
+msgstr "%(topic)s ノード (バージョン %(version_string)s) を開始しています"
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -801,40 +805,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr "データベースにエントリの存在しないサービスを終了します。"
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr "サービスデータベースオブジェクトが消滅しました。再作成します。"
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr "モデルサーバへの接続を復旧しました。"
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr "モデルサーバが消滅しました。"
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
-msgstr ""
+msgstr "serve() は一度しか呼び出せません"
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
-#, fuzzy
 msgid "Full set of CONF:"
-msgstr "FLAGSの一覧:"
+msgstr "CONF のフルセット:"
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -851,12 +854,12 @@ msgstr ""
 
 #: cinder/utils.py:213
 msgid "Specify a password or private_key"
-msgstr ""
+msgstr "パスワードまたは private_key を指定してください"
 
 #: cinder/utils.py:229
-#, fuzzy, python-format
+#, python-format
 msgid "Error connecting via ssh: %s"
-msgstr "libvirt %s へ接続します。"
+msgstr "ssh を介した接続中にエラーが発生しました: %s"
 
 #: cinder/utils.py:413
 #, python-format
@@ -871,7 +874,7 @@ msgstr "バックエンドは %s です。"
 #: cinder/utils.py:699
 #, python-format
 msgid "Could not remove tmpdir: %s"
-msgstr ""
+msgstr "tmpdir を削除できませんでした: %s"
 
 #: cinder/utils.py:760
 #, python-format
@@ -881,7 +884,7 @@ msgstr ""
 #: cinder/utils.py:782
 #, python-format
 msgid "%s is not a string or unicode"
-msgstr ""
+msgstr "%s がストリングでもユニコードでもありません"
 
 #: cinder/utils.py:786
 #, python-format
@@ -891,33 +894,35 @@ msgstr ""
 #: cinder/utils.py:791
 #, python-format
 msgid "%(name)s has more than %(max_length)s characters."
-msgstr ""
+msgstr "%(name)s が %(max_length)s 文字を超えています。"
 
 #: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find cert_file : %s"
-msgstr "VBD %s から SRを取得できません。"
+msgstr "cert_file が見つかりません: %s"
 
 #: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find ca_file : %s"
-msgstr "VBD %s から SRを取得できません。"
+msgstr "ca_file が見つかりません: %s"
 
 #: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find key_file : %s"
-msgstr "VBD %s から SRを取得できません。"
+msgstr "key_file が見つかりません: %s"
 
 #: 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 ""
+"サーバーを SSL モードで実行する場合は、cert_file オプション値と key_file "
+"オプション値の両方を構成ファイルに指定する必要があります"
 
 #: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
-msgstr ""
+msgstr "30 秒間の試行後に %(host)s:%(port)s にバインドできませんでした"
 
 #: cinder/wsgi.py:215
 #, python-format
@@ -926,11 +931,11 @@ msgstr ""
 
 #: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
-msgstr ""
+msgstr "WSGI サーバーを停止しています。"
 
 #: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
-msgstr ""
+msgstr "WSGI サーバーが停止しました。"
 
 #: cinder/wsgi.py:322
 msgid "You must implement __call__"
@@ -950,105 +955,105 @@ msgstr ""
 
 #: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:282
 msgid "limit param must be an integer"
-msgstr ""
+msgstr "limit パラメーターは整数でなければなりません"
 
 #: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:279
 msgid "limit param must be positive"
-msgstr ""
+msgstr "limit パラメーターは正でなければなりません"
 
 #: cinder/api/common.py:120
 msgid "offset param must be an integer"
-msgstr ""
+msgstr "offset パラメーターは整数でなければなりません"
 
 #: cinder/api/common.py:134
 msgid "offset param must be positive"
-msgstr ""
+msgstr "offset パラメーターは正でなければなりません"
 
 #: cinder/api/common.py:162
 #, python-format
 msgid "marker [%s] not found"
-msgstr ""
+msgstr "マーカー [%s] が見つかりません"
 
 #: cinder/api/common.py:189
 #, python-format
 msgid "href %s does not contain version"
-msgstr ""
+msgstr "href %s にバージョンが含まれていません"
 
 #: cinder/api/extensions.py:183
 msgid "Initializing extension manager."
-msgstr ""
+msgstr "拡張マネージャーを初期化しています。"
 
 #: cinder/api/extensions.py:198
 #, python-format
 msgid "Loaded extension: %s"
-msgstr ""
+msgstr "拡張をロードしました: %s"
 
 #: cinder/api/extensions.py:236
 #, python-format
 msgid "Ext name: %s"
-msgstr ""
+msgstr "拡張名: %s"
 
 #: cinder/api/extensions.py:237
 #, python-format
 msgid "Ext alias: %s"
-msgstr ""
+msgstr "拡張のエイリアス: %s"
 
 #: cinder/api/extensions.py:238
 #, python-format
 msgid "Ext description: %s"
-msgstr ""
+msgstr "拡張の説明: %s"
 
 #: cinder/api/extensions.py:240
 #, python-format
 msgid "Ext namespace: %s"
-msgstr ""
+msgstr "拡張の名前空間: %s"
 
 #: cinder/api/extensions.py:241
 #, python-format
 msgid "Ext updated: %s"
-msgstr ""
+msgstr "拡張の更新日時: %s"
 
 #: cinder/api/extensions.py:243
 #, python-format
 msgid "Exception loading extension: %s"
-msgstr ""
+msgstr "拡張のロード中に例外が発生しました: %s"
 
 #: cinder/api/extensions.py:257
 #, python-format
 msgid "Loading extension %s"
-msgstr ""
+msgstr "拡張 %s をロードしています"
 
 #: cinder/api/extensions.py:263
 #, python-format
 msgid "Calling extension factory %s"
-msgstr ""
+msgstr "拡張ファクトリー %s を呼び出しています"
 
 #: cinder/api/extensions.py:277
 #, python-format
 msgid "osapi_volume_extension is set to deprecated path: %s"
-msgstr ""
+msgstr "osapi_volume_extension が非推奨のパス %s に設定されています"
 
 #: cinder/api/extensions.py:279
 #, python-format
 msgid ""
 "Please set your flag or cinder.conf settings for osapi_volume_extension "
 "to: %s"
-msgstr ""
+msgstr "osapi_volume_extension のフラグまたは cinder.conf 設定を %s に設定してください。"
 
 #: cinder/api/extensions.py:288
 #, python-format
 msgid "Failed to load extension %(ext_factory)s: %(exc)s"
-msgstr ""
+msgstr "拡張 %(ext_factory)s のロードに失敗しました: %(exc)s"
 
 #: cinder/api/extensions.py:357
 #, python-format
 msgid "Failed to load extension %(classpath)s: %(exc)s"
-msgstr ""
+msgstr "拡張 %(classpath)s のロードに失敗しました: %(exc)s"
 
 #: cinder/api/extensions.py:382
 #, python-format
 msgid "Failed to load extension %(ext_name)s: %(exc)s"
-msgstr ""
+msgstr "拡張 %(ext_name)s のロードに失敗しました: %(exc)s"
 
 #: cinder/api/sizelimit.py:25
 msgid ""
@@ -1058,66 +1063,66 @@ msgstr ""
 
 #: cinder/api/xmlutil.py:266
 msgid "element is not a child"
-msgstr ""
+msgstr "エレメントは子ではありません"
 
 #: cinder/api/xmlutil.py:463
 msgid "root element selecting a list"
-msgstr ""
+msgstr "ルート・エレメントのリスト選択"
 
 #: cinder/api/xmlutil.py:786
 #, python-format
 msgid "Template tree mismatch; adding slave %(slavetag)s to master %(mastertag)s"
-msgstr ""
+msgstr "テンプレート・ツリーの不一致。スレーブ %(slavetag)s をマスター %(mastertag)s に追加しています"
 
 #: cinder/api/xmlutil.py:907
 msgid "subclasses must implement construct()!"
-msgstr ""
+msgstr "サブクラスは construct() を実装する必要があります。"
 
 #: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
-msgstr ""
+msgstr "%(resource)s '%(id)s' を %(update)r' で更新しています"
 
 #: cinder/api/contrib/backups.py:161
 #, python-format
 msgid "show called for member %s"
-msgstr ""
+msgstr "show がメンバー %s を呼び出しました"
 
 #: cinder/api/contrib/backups.py:173
-#, fuzzy, python-format
+#, python-format
 msgid "delete called for member %s"
-msgstr "Secret Key change: ユーザ %s のシークレットキーを更新します。"
+msgstr "delete がメンバー %s を呼び出しました"
 
 #: cinder/api/contrib/backups.py:176
 #, python-format
 msgid "Delete backup with id: %s"
-msgstr ""
+msgstr "次の ID のバックアップを削除: %s"
 
 #: cinder/api/contrib/backups.py:218
 #, python-format
 msgid "Creating new backup %s"
-msgstr ""
+msgstr "新規バックアップ %s を作成中です"
 
 #: cinder/api/contrib/backups.py:228 cinder/api/contrib/backups.py:260
 #: cinder/api/contrib/volume_transfer.py:157
 #: cinder/api/contrib/volume_transfer.py:193
 msgid "Incorrect request body format"
-msgstr ""
+msgstr "要求本体の形式が正しくありません"
 
 #: cinder/api/contrib/backups.py:234
 #, python-format
 msgid "Creating backup of volume %(volume_id)s in container %(container)s"
-msgstr ""
+msgstr "ボリューム %(volume_id)s のバックアップをコンテナー %(container)s 内に作成中です"
 
 #: cinder/api/contrib/backups.py:257
 #, python-format
 msgid "Restoring backup %(backup_id)s (%(body)s)"
-msgstr ""
+msgstr "バックアップ %(backup_id)s (%(body)s) の復元中です"
 
 #: cinder/api/contrib/backups.py:267
 #, python-format
 msgid "Restoring backup %(backup_id)s to volume %(volume_id)s"
-msgstr ""
+msgstr "バックアップ %(backup_id)s をボリューム %(volume_id)s に復元中です"
 
 #: cinder/api/contrib/backups.py:300
 #, python-format
@@ -1150,39 +1155,39 @@ msgstr ""
 
 #: cinder/api/contrib/extended_snapshot_attributes.py:60
 msgid "Snapshot not found."
-msgstr ""
+msgstr "スナップショットが見つかりません。"
 
 #: cinder/api/contrib/hosts.py:86 cinder/api/openstack/wsgi.py:237
 msgid "cannot understand XML"
-msgstr ""
+msgstr "XML を解釈できません"
 
 #: cinder/api/contrib/hosts.py:136
 #, python-format
 msgid "Host '%s' could not be found."
-msgstr ""
+msgstr "ホスト '%s' が見つかりませんでした。"
 
 #: cinder/api/contrib/hosts.py:165
 #, python-format
 msgid "Invalid status: '%s'"
-msgstr ""
+msgstr "無効な状況: '%s'"
 
 #: cinder/api/contrib/hosts.py:168
 #, python-format
 msgid "Invalid update setting: '%s'"
-msgstr ""
+msgstr "無効な更新設定: '%s'"
 
 #: cinder/api/contrib/hosts.py:180
 #, python-format
 msgid "Setting host %(host)s to %(state)s."
-msgstr ""
+msgstr "ホスト %(host)s を %(state)s に設定しています。"
 
 #: cinder/api/contrib/hosts.py:206
 msgid "Describe-resource is admin only functionality"
-msgstr ""
+msgstr "Describe-resource は管理者専用の機能です"
 
 #: cinder/api/contrib/hosts.py:214
 msgid "Host not found"
-msgstr ""
+msgstr "ホストが見つかりません"
 
 #: cinder/api/contrib/qos_specs_manage.py:110
 msgid "Please specify a name for QoS specs."
@@ -1219,7 +1224,7 @@ msgstr ""
 
 #: cinder/api/contrib/quotas.py:68
 msgid "Quota limit must be -1 or greater."
-msgstr ""
+msgstr "割り当て量制限は -1 以上の値でなければなりません。"
 
 #: cinder/api/contrib/quotas.py:105
 msgid "Missing required element quota_set in request body."
@@ -1232,7 +1237,7 @@ msgstr ""
 
 #: cinder/api/contrib/scheduler_hints.py:36
 msgid "Malformed scheduler_hints attribute"
-msgstr ""
+msgstr "scheduler_hints 属性の形式に誤りがあります"
 
 #: cinder/api/contrib/services.py:91
 msgid ""
@@ -1266,19 +1271,19 @@ msgstr ""
 
 #: cinder/api/contrib/types_extra_specs.py:101
 msgid "Request body empty"
-msgstr ""
+msgstr "要求本体が空です"
 
 #: cinder/api/contrib/types_extra_specs.py:105
 #: cinder/api/v1/snapshot_metadata.py:75 cinder/api/v1/volume_metadata.py:75
 #: cinder/api/v2/snapshot_metadata.py:75 cinder/api/v2/volume_metadata.py:74
 msgid "Request body and URI mismatch"
-msgstr ""
+msgstr "要求本体と URI の不一致"
 
 #: cinder/api/contrib/types_extra_specs.py:108
 #: cinder/api/v1/snapshot_metadata.py:79 cinder/api/v1/volume_metadata.py:79
 #: cinder/api/v2/snapshot_metadata.py:79 cinder/api/v2/volume_metadata.py:78
 msgid "Request body contains too many items"
-msgstr ""
+msgstr "要求本体に含まれる項目が多すぎます"
 
 #: cinder/api/contrib/types_extra_specs.py:152
 msgid ""
@@ -1317,7 +1322,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_actions.py:230
 msgid "No image_name was specified in request."
-msgstr ""
+msgstr "要求に image_name が指定されていませんでした。"
 
 #: cinder/api/contrib/volume_actions.py:238
 msgid "Bad value for 'force' parameter."
@@ -1327,26 +1332,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1372,14 +1389,14 @@ msgid "Listing volume transfers"
 msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:147
-#, fuzzy, python-format
+#, python-format
 msgid "Creating new volume transfer %s"
-msgstr "Create volume: %s GBのボリュームを作成します。"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:162
-#, fuzzy, python-format
+#, python-format
 msgid "Creating transfer of volume %s"
-msgstr "存在しないコンソール %(console_id)s を削除しようとしました"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:183
 #, python-format
@@ -1387,9 +1404,9 @@ msgid "Accepting volume transfer %s"
 msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:196
-#, fuzzy, python-format
+#, python-format
 msgid "Accepting transfer %s"
-msgstr "Create volume: %s GBのボリュームを作成します。"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:217
 #, python-format
@@ -1452,7 +1469,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1462,7 +1479,7 @@ msgstr ""
 
 #: cinder/api/middleware/auth.py:112
 msgid "Invalid service catalog json."
-msgstr ""
+msgstr "無効なサービス・カタログ JSON。"
 
 #: cinder/api/middleware/fault.py:44
 #, python-format
@@ -1472,7 +1489,7 @@ msgstr "エラー %s をキャッチしました。"
 #: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:978
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
-msgstr ""
+msgstr "HTTP %(status)d の %(url)s が返されました"
 
 #: cinder/api/middleware/fault.py:69
 #, python-format
@@ -1482,28 +1499,28 @@ msgstr ""
 #: cinder/api/middleware/sizelimit.py:55 cinder/api/middleware/sizelimit.py:64
 #: cinder/api/middleware/sizelimit.py:78
 msgid "Request is too large."
-msgstr ""
+msgstr "要求が大きすぎます。"
 
 #: cinder/api/openstack/__init__.py:69
 msgid "Must specify an ExtensionManager class"
-msgstr ""
+msgstr "ExtensionManager クラスを指定する必要があります"
 
 #: cinder/api/openstack/__init__.py:80
 #, python-format
 msgid "Extended resource: %s"
-msgstr ""
+msgstr "リソースを拡張しました: %s"
 
 #: cinder/api/openstack/__init__.py:104
 #, python-format
 msgid ""
 "Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
 "resource"
-msgstr ""
+msgstr "拡張 %(ext_name)s: リソース %(collection)s を拡張できません: このようなリソースはありません"
 
 #: cinder/api/openstack/__init__.py:110
 #, python-format
 msgid "Extension %(ext_name)s extending resource: %(collection)s"
-msgstr ""
+msgstr "拡張 %(ext_name)s でリソースを拡張しています: %(collection)s"
 
 #: cinder/api/openstack/__init__.py:126
 msgid ""
@@ -1519,43 +1536,43 @@ msgstr ""
 
 #: cinder/api/openstack/wsgi.py:212 cinder/api/openstack/wsgi.py:628
 msgid "cannot understand JSON"
-msgstr ""
+msgstr "JSON を解釈できません"
 
 #: cinder/api/openstack/wsgi.py:633
 msgid "too many body keys"
-msgstr ""
+msgstr "本体キーが多すぎます"
 
 #: cinder/api/openstack/wsgi.py:671
 #, python-format
 msgid "Exception handling resource: %s"
-msgstr ""
+msgstr "リソースの処理中に例外が発生しました: %s"
 
 #: cinder/api/openstack/wsgi.py:676
 #, python-format
 msgid "Fault thrown: %s"
-msgstr ""
+msgstr "障害がスローされました: %s"
 
 #: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "HTTP exception thrown: %s"
-msgstr ""
+msgstr "HTTP 例外がスローされました: %s"
 
 #: cinder/api/openstack/wsgi.py:787
 msgid "Empty body provided in request"
-msgstr ""
+msgstr "要求内に指定されている本体が空です"
 
 #: cinder/api/openstack/wsgi.py:793
 msgid "Unrecognized Content-Type provided in request"
-msgstr ""
+msgstr "認識されない Content-Type が要求内で指定されています"
 
 #: cinder/api/openstack/wsgi.py:797
 msgid "No Content-Type provided in request"
-msgstr ""
+msgstr "要求内に Content-Type が指定されていません"
 
 #: cinder/api/openstack/wsgi.py:908
 #, python-format
 msgid "There is no such action: %s"
-msgstr ""
+msgstr "このようなアクションはありません: %s"
 
 #: cinder/api/openstack/wsgi.py:911 cinder/api/openstack/wsgi.py:924
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
@@ -1567,20 +1584,20 @@ msgstr ""
 #: cinder/api/v2/volume_metadata.py:52 cinder/api/v2/volume_metadata.py:70
 #: cinder/api/v2/volume_metadata.py:95 cinder/api/v2/volume_metadata.py:120
 msgid "Malformed request body"
-msgstr ""
+msgstr "誤った形式の要求本体"
 
 #: cinder/api/openstack/wsgi.py:921
 msgid "Unsupported Content-Type"
-msgstr ""
+msgstr "サポートされない Content-Type"
 
 #: cinder/api/openstack/wsgi.py:933
 msgid "Malformed request url"
-msgstr ""
+msgstr "誤った形式の要求 URL"
 
 #: cinder/api/openstack/wsgi.py:981
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
-msgstr ""
+msgstr "%(url)s が障害を返しました: %(e)s"
 
 #: cinder/api/openstack/volume/__init__.py:25
 msgid ""
@@ -1599,19 +1616,18 @@ msgstr ""
 msgid ""
 "Only %(value)s %(verb)s request(s) can be made to %(uri)s every "
 "%(unit_string)s."
-msgstr ""
+msgstr "%(uri)s に対して実行できる要求は、%(unit_string)s につき %(value)s %(verb)s 要求に限られます。"
 
 #: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
-msgstr ""
+msgstr "この要求は rate-limited でした。"
 
 #: cinder/api/v1/snapshot_metadata.py:37 cinder/api/v1/snapshot_metadata.py:117
 #: cinder/api/v1/snapshot_metadata.py:156 cinder/api/v2/snapshot_metadata.py:37
 #: cinder/api/v2/snapshot_metadata.py:117
 #: cinder/api/v2/snapshot_metadata.py:156
-#, fuzzy
 msgid "snapshot does not exist"
-msgstr "snapshotting: インスタンス %s のスナップショットを取得中"
+msgstr "スナップショットが存在しません"
 
 #: cinder/api/v1/snapshot_metadata.py:139
 #: cinder/api/v1/snapshot_metadata.py:149 cinder/api/v1/volume_metadata.py:139
@@ -1619,12 +1635,12 @@ msgstr "snapshotting: インスタンス %s のスナップショットを取得
 #: cinder/api/v2/snapshot_metadata.py:149 cinder/api/v2/volume_metadata.py:138
 #: cinder/api/v2/volume_metadata.py:148
 msgid "Metadata item was not found"
-msgstr ""
+msgstr "メタデータ項目が見つかりませんでした"
 
 #: cinder/api/v1/snapshots.py:119 cinder/api/v2/snapshots.py:120
 #, python-format
 msgid "Delete snapshot with id: %s"
-msgstr ""
+msgstr "次の ID のスナップショットを削除: %s"
 
 #: cinder/api/v1/snapshots.py:173 cinder/api/v2/snapshots.py:184
 msgid "'volume_id' must be specified"
@@ -1633,34 +1649,33 @@ msgstr ""
 #: cinder/api/v1/snapshots.py:182 cinder/api/v2/snapshots.py:193
 #, python-format
 msgid "Create snapshot from volume %s"
-msgstr ""
+msgstr "ボリューム %s からスナップショットを作成"
 
 #: cinder/api/v1/snapshots.py:186 cinder/api/v2/snapshots.py:202
 #, python-format
 msgid "Invalid value '%s' for force. "
-msgstr ""
+msgstr "force の値 '%s' は無効です。"
 
 #: cinder/api/v1/volume_metadata.py:37 cinder/api/v1/volume_metadata.py:117
 #: cinder/api/v1/volume_metadata.py:156 cinder/api/v2/volume_metadata.py:36
 #: cinder/api/v2/volume_metadata.py:116 cinder/api/v2/volume_metadata.py:155
-#, fuzzy
 msgid "volume does not exist"
-msgstr "ボリュームグループ%sが存在しません。"
+msgstr "ボリュームが存在しません"
 
 #: cinder/api/v1/volumes.py:114
 #, python-format
 msgid "vol=%s"
-msgstr ""
+msgstr "vol=%s"
 
 #: cinder/api/v1/volumes.py:293 cinder/api/v2/volumes.py:181
 #, python-format
 msgid "Delete volume with id: %s"
-msgstr ""
+msgstr "次の ID のボリュームを削除: %s"
 
 #: cinder/api/v1/volumes.py:347 cinder/api/v1/volumes.py:351
 #: cinder/api/v2/volumes.py:251 cinder/api/v2/volumes.py:255
 msgid "Invalid imageRef provided."
-msgstr ""
+msgstr "無効な imageRef が指定されました。"
 
 #: cinder/api/v1/volumes.py:391 cinder/api/v2/volumes.py:308
 #, python-format
@@ -1680,7 +1695,7 @@ msgstr "Create volume: %s GBのボリュームを作成します。"
 #: cinder/api/v1/volumes.py:504
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
-msgstr ""
+msgstr "照会からオプション '%(bad_options)s' を削除しています"
 
 #: cinder/api/v2/snapshots.py:111 cinder/api/v2/snapshots.py:126
 #: cinder/api/v2/snapshots.py:267
@@ -1700,53 +1715,49 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
-msgstr ""
+msgstr "照会からオプション '%s' を削除しています"
 
 #: cinder/backup/api.py:66
-#, fuzzy
 msgid "Backup status must be available or error"
-msgstr "ボリュームのステータス(status)は available でなければなりません。"
+msgstr "バックアップ状況は「使用可能」または「エラー」でなければなりません"
 
-#: cinder/backup/api.py:115
-#, fuzzy
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
-msgstr "ボリュームのステータス(status)は available でなければなりません。"
+msgstr "バックアップするボリュームは「使用可能」でなければなりません"
 
-#: cinder/backup/api.py:150
-#, fuzzy
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
-msgstr "ボリュームのステータス(status)は available でなければなりません。"
+msgstr "バックアップ状況は「使用可能」でなければなりません"
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
-msgstr ""
+msgstr "復元するバックアップのサイズが無効です"
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
-msgstr ""
+msgstr "%(size)s GB のボリュームをバックアップ %(backup_id)s の復元用に作成しています"
 
-#: cinder/backup/api.py:180
-#, fuzzy
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
-msgstr "ボリュームのステータス(status)は available でなければなりません。"
+msgstr "復元するボリュームは「使用可能」でなければなりません"
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
-msgstr ""
+msgstr "ボリューム・サイズ %(volume_size)d は、サイズ %(size)d のバックアップを復元するには小さすぎます"
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
-msgstr ""
+msgstr "ボリューム %(volume_id)s をバックアップ %(backup_id)s の復元によって上書きしています"
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2028,7 +2039,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2093,7 +2104,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2104,243 +2115,302 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:463
+#, python-format
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:474
+#, python-format
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:492
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Pipe1 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:506
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Pipe2 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
 #, python-format
 msgid "unsupported compression algorithm: %s"
-msgstr ""
+msgstr "サポートされない圧縮アルゴリズム: %s"
 
 #: cinder/backup/drivers/swift.py:122
 #, python-format
@@ -2350,24 +2420,24 @@ msgstr ""
 #: cinder/backup/drivers/swift.py:140
 #, python-format
 msgid "_create_container started, container: %(container)s,backup: %(backup_id)s"
-msgstr ""
+msgstr "_create_container を開始しました。コンテナー: %(container)s、バックアップ: %(backup_id)s"
 
 #: cinder/backup/drivers/swift.py:159
 #, python-format
 msgid "_generate_swift_object_name_prefix: %s"
-msgstr ""
+msgstr "_generate_swift_object_name_prefix: %s"
 
 #: cinder/backup/drivers/swift.py:168
 #, python-format
 msgid "generated object list: %s"
-msgstr ""
+msgstr "生成されたオブジェクト・リスト: %s"
 
 #: cinder/backup/drivers/swift.py:179
 #, python-format
 msgid ""
 "_write_metadata started, container name: %(container)s, metadata "
 "filename: %(filename)s"
-msgstr ""
+msgstr "_write_metadata を開始しました。コンテナー名: %(container)s、メタデータ・ファイル名: %(filename)s"
 
 #: cinder/backup/drivers/swift.py:197
 #, python-format
@@ -2376,27 +2446,29 @@ msgid ""
 "[%(etag)s] is not the same as MD5 of metadata file sent to swift "
 "[%(md5)s]"
 msgstr ""
+"Swift へのメタデータ・ファイルの書き込み中にエラーが発生しました。Swift のメタデータ・ファイルの MD5 [%(etag)s] "
+"が、Swift に送信されたメタデータ・ファイルの MD5 [%(md5)s] と同じではありません"
 
 #: cinder/backup/drivers/swift.py:202
 msgid "_write_metadata finished"
-msgstr ""
+msgstr "_write_metadata を終了しました"
 
 #: cinder/backup/drivers/swift.py:207
 #, python-format
 msgid ""
 "_read_metadata started, container name: %(container)s, metadata filename:"
 " %(filename)s"
-msgstr ""
+msgstr "_read_metadata を開始しました。コンテナー名: %(container)s、メタデータ・ファイル名: %(filename)s"
 
 #: cinder/backup/drivers/swift.py:212
 #, python-format
 msgid "_read_metadata finished (%s)"
-msgstr ""
+msgstr "_read_metadata を終了しました (%s)"
 
 #: cinder/backup/drivers/swift.py:222
 #, python-format
 msgid "volume size %d is invalid."
-msgstr ""
+msgstr "ボリューム・サイズ %d は無効です。"
 
 #: cinder/backup/drivers/swift.py:236
 #, python-format
@@ -2405,10 +2477,13 @@ msgid ""
 "%(volume_size_bytes)d, swift object names prefix %(object_prefix)s, "
 "availability zone: %(availability_zone)s"
 msgstr ""
+"ボリューム: %(volume_id)s の Swift へのバックアップを開始しています。ボリューム・サイズ: "
+"%(volume_size_bytes)d、Swift オブジェクト名プレフィックス: %(object_prefix)s、可用性ゾーン: "
+"%(availability_zone)s"
 
 #: cinder/backup/drivers/swift.py:260
 msgid "reading chunk of data from volume"
-msgstr ""
+msgstr "ボリュームからデータ・チャンクを読み取っています"
 
 #: cinder/backup/drivers/swift.py:267
 #, python-format
@@ -2416,24 +2491,26 @@ msgid ""
 "compressed %(data_size_bytes)d bytes of data to %(comp_size_bytes)d bytes"
 " using %(algorithm)s"
 msgstr ""
+"%(algorithm)s を使用して %(data_size_bytes)d バイトのデータを %(comp_size_bytes)d "
+"バイトに圧縮しました"
 
 #: cinder/backup/drivers/swift.py:276
 msgid "not compressing data"
-msgstr ""
+msgstr "データを圧縮していません"
 
 #: cinder/backup/drivers/swift.py:280
 msgid "About to put_object"
-msgstr ""
+msgstr "put_object を実行しようとしています"
 
 #: cinder/backup/drivers/swift.py:286
 #, python-format
 msgid "swift MD5 for %(object_name)s: %(etag)s"
-msgstr ""
+msgstr "%(object_name)s の Swift MD5: %(etag)s"
 
 #: cinder/backup/drivers/swift.py:290
 #, python-format
 msgid "backup MD5 for %(object_name)s: %(md5)s"
-msgstr ""
+msgstr "%(object_name)s のバックアップ MD5: %(md5)s"
 
 #: cinder/backup/drivers/swift.py:293
 #, python-format
@@ -2441,15 +2518,17 @@ msgid ""
 "error writing object to swift, MD5 of object in swift %(etag)s is not the"
 " same as MD5 of object sent to swift %(md5)s"
 msgstr ""
+"Swift へのオブジェクトの書き込み中にエラーが発生しました。Swift 内のオブジェクトの MD5 %(etag)s が Swift "
+"に送信されたオブジェクトの MD5 %(md5)s と同じではありません"
 
 #: cinder/backup/drivers/swift.py:301
 msgid "Calling eventlet.sleep(0)"
-msgstr ""
+msgstr "eventlet.sleep(0) の呼び出し中"
 
 #: cinder/backup/drivers/swift.py:319
 #, python-format
 msgid "backup %s finished."
-msgstr ""
+msgstr "バックアップ %s が終了しました。"
 
 #: cinder/backup/drivers/swift.py:352
 #, python-format
@@ -2459,18 +2538,20 @@ msgstr ""
 #: cinder/backup/drivers/swift.py:362
 #, python-format
 msgid "v1 swift volume backup restore of %s started"
-msgstr ""
+msgstr "%s の v1 Swift ボリュームのバックアップの復元を開始しました"
 
 #: cinder/backup/drivers/swift.py:367
 #, python-format
 msgid "metadata_object_names = %s"
-msgstr ""
+msgstr "metadata_object_names = %s"
 
 #: cinder/backup/drivers/swift.py:373
 msgid ""
 "restore_backup aborted, actual swift object list in swift does not match "
 "object list stored in metadata"
 msgstr ""
+"restore_backup を打ち切りました。Swift 内の実際の Swift "
+"オブジェクト・リストがメタデータ内に保管されているオブジェクト・リストと一致しません"
 
 #: cinder/backup/drivers/swift.py:379
 #, python-format
@@ -2478,16 +2559,18 @@ msgid ""
 "restoring object from swift. backup: %(backup_id)s, container: "
 "%(container)s, swift object name: %(object_name)s, volume: %(volume_id)s"
 msgstr ""
+"Swift からオブジェクトを復元しています。バックアップ: %(backup_id)s、コンテナー: %(container)s、Swift "
+"オブジェクト名: %(object_name)s、ボリューム: %(volume_id)s"
 
 #: cinder/backup/drivers/swift.py:395
 #, python-format
 msgid "decompressing data using %s algorithm"
-msgstr ""
+msgstr "%s アルゴリズムを使用してデータを圧縮解除しています"
 
 #: cinder/backup/drivers/swift.py:418
 #, python-format
 msgid "v1 swift volume backup restore of %s finished"
-msgstr ""
+msgstr "%s の v1 Swift ボリュームのバックアップの復元を終了しました"
 
 #: cinder/backup/drivers/swift.py:426
 #, python-format
@@ -2495,40 +2578,42 @@ msgid ""
 "starting restore of backup %(object_prefix)s from swift container: "
 "%(container)s, to volume %(volume_id)s, backup: %(backup_id)s"
 msgstr ""
+"Swift コンテナー: %(container)s からボリューム %(volume_id)s へのバックアップ "
+"%(object_prefix)s の復元を開始しています。バックアップ: %(backup_id)s"
 
 #: cinder/backup/drivers/swift.py:440
 #, python-format
 msgid "Restoring swift backup version %s"
-msgstr ""
+msgstr "Swift バックアップ・バージョン %s を復元しています"
 
 #: cinder/backup/drivers/swift.py:445
 #, python-format
 msgid "No support to restore swift backup version %s"
-msgstr ""
+msgstr "Swift バックアップ・バージョン %s を復元するためのサポートがありません"
 
 #: cinder/backup/drivers/swift.py:461
 #, python-format
 msgid "restore %(backup_id)s to %(volume_id)s finished."
-msgstr ""
+msgstr "%(backup_id)s の %(volume_id)s への復元が終了しました。"
 
 #: cinder/backup/drivers/swift.py:475
 msgid "swift error while listing objects, continuing with delete"
-msgstr ""
+msgstr "オブジェクトのリスト中に Swift エラーが発生しました。削除を続行します"
 
 #: cinder/backup/drivers/swift.py:484
 #, python-format
 msgid "swift error while deleting object %s, continuing with delete"
-msgstr ""
+msgstr "オブジェクト %s の削除中に Swift エラーが発生しました。削除を続行します"
 
 #: cinder/backup/drivers/swift.py:487
 #, python-format
 msgid "deleted swift object: %(swift_object_name)s in container: %(container)s"
-msgstr ""
+msgstr "コンテナー: %(container)s 内の Swift オブジェクト: %(swift_object_name)s を削除しました"
 
 #: cinder/backup/drivers/swift.py:497
 #, python-format
 msgid "delete %s finished"
-msgstr ""
+msgstr "%s の削除を終了しました"
 
 #: cinder/backup/drivers/tsm.py:78
 #, python-format
@@ -2715,19 +2800,19 @@ msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
 #: cinder/brick/exception.py:108
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
-msgstr "存在しないコンソール %(console_id)s を削除しようとしました"
+msgstr "ボリューム %(volume_id)s の iSCSI ターゲットの作成に失敗しました。"
 
 #: cinder/brick/exception.py:112
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
-msgstr "存在しないコンソール %(console_id)s を削除しようとしました"
+msgstr "ボリューム %(volume_id)s の iSCSI ターゲットの削除に失敗しました。"
 
 #: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
-msgstr ""
+msgstr "ボリューム %(volume_id)s の iSCSI ターゲットの接続に失敗しました。"
 
 #: cinder/brick/exception.py:120
 #, python-format
@@ -2763,12 +2848,12 @@ msgstr ""
 
 #: cinder/brick/initiator/connector.py:609
 msgid "We are unable to locate any Fibre Channel devices"
-msgstr ""
+msgstr "ファイバー・チャネル・デバイスを見つけることができません"
 
 #: cinder/brick/initiator/connector.py:619
 #, python-format
 msgid "Looking for Fibre Channel dev %(device)s"
-msgstr ""
+msgstr "ファイバー・チャネル・デバイス %(device)s の検索中"
 
 #: cinder/brick/initiator/connector.py:629
 msgid "Fibre Channel volume device not found."
@@ -2787,7 +2872,7 @@ msgstr ""
 #: cinder/brick/initiator/connector.py:658
 #, python-format
 msgid "Multipath device discovered %(device)s"
-msgstr ""
+msgstr "マルチパス・デバイス %(device)s がディスカバーされました"
 
 #: cinder/brick/initiator/connector.py:776
 #, python-format
@@ -2826,24 +2911,24 @@ msgstr ""
 
 #: cinder/brick/initiator/linuxfc.py:50 cinder/brick/initiator/linuxfc.py:56
 msgid "systool is not installed"
-msgstr ""
+msgstr "systool がインストールされていません"
 
 #: cinder/brick/initiator/linuxscsi.py:99
 #: cinder/brick/initiator/linuxscsi.py:107
 #: cinder/brick/initiator/linuxscsi.py:124
 #, python-format
 msgid "multipath call failed exit (%(code)s)"
-msgstr ""
+msgstr "マルチパス呼び出しの失敗、エラーコード (%(code)s)"
 
 #: cinder/brick/initiator/linuxscsi.py:145
 #, python-format
 msgid "Couldn't find multipath device %(line)s"
-msgstr ""
+msgstr "マルチパスデバイス %(line)s が検出出来ませんでした。"
 
 #: cinder/brick/initiator/linuxscsi.py:149
 #, python-format
 msgid "Found multipath device = %(mdev)s"
-msgstr ""
+msgstr "検出されたマルチパスデバイス = %(mdev)s"
 
 #: cinder/brick/iscsi/iscsi.py:135
 msgid "Attempting recreate of backing lun..."
@@ -2859,7 +2944,7 @@ msgstr ""
 #: cinder/brick/iscsi/iscsi.py:172
 #, python-format
 msgid "Creating iscsi_target for: %s"
-msgstr ""
+msgstr "%s の iscsi_target を作成しています"
 
 #: cinder/brick/iscsi/iscsi.py:179
 #, python-format
@@ -2868,10 +2953,10 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
+#, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
-msgstr "存在しないコンソール %(console_id)s を削除しようとしました"
+msgstr ""
 
 #: cinder/brick/iscsi/iscsi.py:222
 #, python-format
@@ -2879,59 +2964,65 @@ msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
+"ボリューム ID: %(vol_id)s の iSCSI ターゲットの作成に失敗しました。ご使用の tgtd 構成ファイルに 'include "
+"%(volumes_dir)s/*' が含まれていることを確認してください"
 
 #: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
-msgstr ""
+msgstr "%s の iscsi_target を削除しています"
 
 #: cinder/brick/iscsi/iscsi.py:256
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
+#, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
-msgstr "存在しないコンソール %(console_id)s を削除しようとしました"
+msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
-msgid "valid iqn needed for show_target"
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
+msgid "valid iqn needed for show_target"
+msgstr "show_target に必要とされる有効な iqn"
+
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
-msgstr ""
+msgstr "ボリューム: %s の iscsi_target を削除しています"
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
-msgstr ""
+msgstr "ボリューム: %s の iscsi_target を作成しています"
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:552
+#, python-format
 msgid "Removing iscsi_target: %s"
-msgstr "Rebooting instance: インスタンス %s を再起動します。"
+msgstr "iscsi_target の削除中: %s"
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
-msgstr ""
+msgstr "イニシエーターの IQN %s をターゲットに追加できませんでした"
 
 #: cinder/brick/local_dev/lvm.py:75
 msgid "Error creating Volume Group"
@@ -2962,18 +3053,18 @@ msgid "StdErr  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:82
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to locate Volume Group %s"
-msgstr "ボリューム %s の存在が確認できません。"
+msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:157
 msgid "Error querying thin pool about data_percent"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:370
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find VG: %s"
-msgstr "VBD %s から SRを取得できません。"
+msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:420
 msgid ""
@@ -3053,25 +3144,25 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
 #: cinder/common/sqlalchemyutils.py:66
 #: cinder/openstack/common/db/sqlalchemy/utils.py:72
 msgid "Id not in sort_keys; is sort_keys unique?"
-msgstr ""
+msgstr "sort_keys に ID がありません。sort_keys は固有ですか?"
 
 #: cinder/common/sqlalchemyutils.py:114
 #: cinder/openstack/common/db/sqlalchemy/utils.py:120
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
-msgstr ""
+msgstr "ソート方向が不明です。'desc' または 'asc' でなければなりません"
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3083,52 +3174,51 @@ msgstr "Request context を空とすることは非推奨です。"
 #: cinder/db/sqlalchemy/api.py:192
 #, python-format
 msgid "Unrecognized read_deleted value '%s'"
-msgstr ""
+msgstr "認識されない read_deleted 値 '%s'"
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
-#, fuzzy
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
-msgstr "ボリュームのステータス(status)は available でなければなりません。"
+msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3137,19 +3227,19 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migration.py:37
 msgid "version should be an integer"
-msgstr ""
+msgstr "バージョンは整数でなければなりません"
 
 #: cinder/db/sqlalchemy/migration.py:64
 msgid "Upgrade DB using Essex release first."
-msgstr ""
+msgstr "最初に Essex リリースを使用して DB をアップグレードします。"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/001_cinder_init.py:240
 msgid "Exception while creating table."
-msgstr ""
+msgstr "テーブルの作成中に例外が発生しました。"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/001_cinder_init.py:269
 msgid "Downgrade from initial Cinder install is unsupported."
-msgstr ""
+msgstr "初期 Cinder のインストールからのダウングレードはサポートされていません。"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:49
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:74
@@ -3161,7 +3251,7 @@ msgstr ""
 #: cinder/db/sqlalchemy/migrate_repo/versions/020_add_volume_admin_metadata_table.py:46
 #, python-format
 msgid "Table |%s| not created!"
-msgstr ""
+msgstr "テーブル |%s| は作成されていません。"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:127
 msgid "Dropping foreign key reservations_ibfk_1 failed."
@@ -3169,31 +3259,31 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:133
 msgid "quota_classes table not dropped"
-msgstr ""
+msgstr "quota_classes テーブルが除去されていません"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:140
 msgid "quota_usages table not dropped"
-msgstr ""
+msgstr "quota_usages テーブルが除去されていません"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:147
 msgid "reservations table not dropped"
-msgstr ""
+msgstr "予約テーブルが除去されていません"
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
-msgstr ""
+msgstr "volume_glance_metadata テーブルが除去されていません"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/008_add_backup.py:68
 msgid "backups table not dropped"
-msgstr ""
+msgstr "バックアップ・テーブルが除去されていません"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/009_add_snapshot_metadata_table.py:58
 msgid "snapshot_metadata table not dropped"
-msgstr ""
+msgstr "snapshot_metadata テーブルが除去されていません"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/010_add_transfers_table.py:61
 msgid "transfers table not dropped"
@@ -3286,12 +3376,12 @@ msgstr ""
 
 #: cinder/image/image_utils.py:94 cinder/image/image_utils.py:199
 msgid "'qemu-img info' parsing failed."
-msgstr ""
+msgstr "'qemu-img info' の解析に失敗しました。"
 
 #: cinder/image/image_utils.py:101
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
-msgstr ""
+msgstr "fmt=%(fmt)s の基盤: %(backing_file)s"
 
 #: cinder/image/image_utils.py:109 cinder/image/image_utils.py:192
 #, python-format
@@ -3321,7 +3411,7 @@ msgstr ""
 #: cinder/image/image_utils.py:206
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
-msgstr ""
+msgstr "fmt=%(fmt)s の基盤: %(backing_file)s"
 
 #: cinder/image/image_utils.py:224
 #, python-format
@@ -3331,7 +3421,7 @@ msgstr ""
 #: cinder/image/image_utils.py:260
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
-msgstr ""
+msgstr "%(f1)s に変換されましたが、現在の形式は %(f2)s です"
 
 #: cinder/keymgr/conf_key_mgr.py:78
 msgid ""
@@ -3351,22 +3441,22 @@ msgstr ""
 #: cinder/openstack/common/eventlet_backdoor.py:140
 #, python-format
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
-msgstr ""
+msgstr "Eventlet backdoorは、プロセス%(pid)dの%(port)sをリスニングしています。"
 
 #: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
-msgstr ""
+msgstr "除去される元の例外: %s"
 
 #: cinder/openstack/common/excutils.py:91
 #, python-format
 msgid "Unexpected exception occurred %d time(s)... retrying."
-msgstr ""
+msgstr "予期せぬ例外が、%d回()発生しました。再試行中。"
 
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
-msgstr ""
+msgstr "キャッシュ・ファイル %s を再ロードしています"
 
 #: cinder/openstack/common/gettextutils.py:271
 msgid "Message objects do not support addition."
@@ -3385,123 +3475,123 @@ msgstr ""
 
 #: cinder/openstack/common/imageutils.py:104
 msgid "Snapshot list encountered but no header found!"
-msgstr ""
+msgstr "スナップショット・リストが検出されましたが、ヘッダーが見つかりません。"
 
 #: cinder/openstack/common/lockutils.py:102
 #, python-format
 msgid "Could not release the acquired lock `%s`"
-msgstr ""
+msgstr "取得したロック `%s` を解放できませんでした"
 
 #: cinder/openstack/common/lockutils.py:189
 #, python-format
 msgid "Got semaphore \"%(lock)s\" for method \"%(method)s\"..."
-msgstr ""
+msgstr "メソッド \"%(method)s\" のセマフォー \"%(lock)s\" を取得しました..."
 
 #: cinder/openstack/common/lockutils.py:200
 #, python-format
 msgid "Attempting to grab file lock \"%(lock)s\" for method \"%(method)s\"..."
-msgstr ""
+msgstr "メソッド \"%(method)s\" のファイル・ロック \"%(lock)s\" の取得を試行中..."
 
 #: cinder/openstack/common/lockutils.py:227
 #, python-format
 msgid "Got file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
-msgstr ""
+msgstr "メソッド \"%(method)s\" のファイル・ロック \"%(lock)s\" を %(path)s で取得しました..."
 
 #: cinder/openstack/common/lockutils.py:235
 #, python-format
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
-msgstr ""
+msgstr "メソッド \"%(method)s\" のファイル・ロック \"%(lock)s\" を %(path)s で解放しました..."
 
-#: cinder/openstack/common/log.py:326
-#, fuzzy, python-format
+#: cinder/openstack/common/log.py:327
+#, python-format
 msgid "Deprecated: %s"
-msgstr "受信: %s"
+msgstr "非推奨: %s"
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
-msgstr ""
+msgstr "ログ設定 %(log_config)s の読み込みエラー: %(err_msg)s"
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
-msgstr ""
+msgstr "syslog 機能は次のいずれかでなければなりません: %s"
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
-msgstr ""
+msgstr "推奨されない構成への致命的な呼び出し: %(msg)s"
 
 #: cinder/openstack/common/loopingcall.py:82
 #, python-format
 msgid "task run outlasted interval by %s sec"
-msgstr ""
+msgstr "タスクの実行が間隔より %s 秒長くかかりました"
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
-msgstr ""
+msgstr "一定期間の呼び出しループ"
 
 #: cinder/openstack/common/loopingcall.py:129
 #, python-format
 msgid "Dynamic looping call sleeping for %.02f seconds"
-msgstr ""
+msgstr "動的ループ呼び出しが %.02f 秒停止します"
 
 #: cinder/openstack/common/loopingcall.py:136
 msgid "in dynamic looping call"
-msgstr ""
+msgstr "動的呼び出しループ"
 
 #: cinder/openstack/common/periodic_task.py:43
 #, python-format
 msgid "Unexpected argument for periodic task creation: %(arg)s."
-msgstr ""
+msgstr "定期タスク作成時の予期しない引数: %(arg)s。"
 
 #: cinder/openstack/common/periodic_task.py:134
 #, python-format
 msgid "Skipping periodic task %(task)s because its interval is negative"
-msgstr ""
+msgstr "タスクの間隔が負であるため、定期タスク %(task)s をスキップしています"
 
 #: cinder/openstack/common/periodic_task.py:139
 #, python-format
 msgid "Skipping periodic task %(task)s because it is disabled"
-msgstr ""
+msgstr "タスクが使用不可であるため、定期タスク %(task)s をスキップしています"
 
 #: cinder/openstack/common/periodic_task.py:177
 #, python-format
 msgid "Running periodic task %(full_task_name)s"
-msgstr ""
+msgstr "定期タスク %(full_task_name)s の実行中"
 
 #: cinder/openstack/common/periodic_task.py:186
 #, python-format
 msgid "Error during %(full_task_name)s: %(e)s"
-msgstr ""
+msgstr "%(full_task_name)s 中のエラー: %(e)s"
 
 #: cinder/openstack/common/policy.py:149
 #, python-format
 msgid ""
 "Inheritance-based rules are deprecated; use the default brain instead of "
 "%s."
-msgstr ""
+msgstr "継承ベースのルールは推奨されていません。%s の代わりにデフォルトのブレーンを使用してください。"
 
 #: cinder/openstack/common/policy.py:163
 #, python-format
 msgid "Failed to understand rule %(match)r"
-msgstr ""
+msgstr "ルール %(match)r を解釈できませんでした"
 
 #: cinder/openstack/common/policy.py:173
 #, python-format
 msgid "Inheritance-based rules are deprecated; update _check_%s"
-msgstr ""
+msgstr "継承ベースのルールは推奨されていません。_check_%s を更新してください"
 
 #: cinder/openstack/common/policy.py:180
 #, python-format
 msgid "No handler for matches of kind %s"
-msgstr ""
+msgstr "突き合わせの種類 %s に対応するハンドラーがありません"
 
 #: cinder/openstack/common/processutils.py:127
 #, python-format
 msgid "Got unknown keyword args to utils.execute: %r"
-msgstr ""
+msgstr "utils.execute の不明なキーワード引数を受け取りました: %r"
 
 #: cinder/openstack/common/processutils.py:142
 #, python-format
@@ -3518,7 +3608,7 @@ msgstr "コマンド実行結果: %s"
 #: cinder/openstack/common/processutils.py:179
 #, python-format
 msgid "%r failed. Retrying."
-msgstr ""
+msgstr "%r が失敗しました。再試行しています。"
 
 #: cinder/openstack/common/processutils.py:218
 #, python-format
@@ -3527,11 +3617,11 @@ msgstr "コマンド(SSH)を実行: %s"
 
 #: cinder/openstack/common/processutils.py:220
 msgid "Environment not supported over SSH"
-msgstr ""
+msgstr "環境は SSH でサポートされていません"
 
 #: cinder/openstack/common/processutils.py:224
 msgid "process_input not supported over SSH"
-msgstr ""
+msgstr "SSH で process_input は サポートされていません"
 
 #: cinder/openstack/common/request_utils.py:66
 #, python-format
@@ -3554,7 +3644,7 @@ msgstr ""
 #: cinder/openstack/common/service.py:269
 #, python-format
 msgid "Caught %s, exiting"
-msgstr ""
+msgstr "%s が見つかりました。終了しています"
 
 #: cinder/openstack/common/service.py:187
 msgid "Exception during rpc cleanup."
@@ -3562,56 +3652,55 @@ msgstr ""
 
 #: cinder/openstack/common/service.py:238
 msgid "Parent process has died unexpectedly, exiting"
-msgstr ""
+msgstr "親プロセスが予期せずに停止しました。終了しています"
 
 #: cinder/openstack/common/service.py:275
-#, fuzzy
 msgid "Unhandled exception"
-msgstr "内側で発生した例外: %s"
+msgstr "未処理例外"
 
 #: cinder/openstack/common/service.py:308
 msgid "Forking too fast, sleeping"
-msgstr ""
+msgstr "fork が早すぎます。スリープ状態にしています"
 
 #: cinder/openstack/common/service.py:327
 #, python-format
 msgid "Started child %d"
-msgstr ""
+msgstr "子 %d を開始しました"
 
 #: cinder/openstack/common/service.py:337
-#, fuzzy, python-format
+#, python-format
 msgid "Starting %d workers"
-msgstr "開始アドレス"
+msgstr "%d ワーカーを開始しています"
 
 #: cinder/openstack/common/service.py:354
 #, python-format
 msgid "Child %(pid)d killed by signal %(sig)d"
-msgstr ""
+msgstr "子 %(pid)d がシグナル %(sig)d によって強制終了されました"
 
 #: cinder/openstack/common/service.py:358
 #, python-format
 msgid "Child %(pid)s exited with status %(code)d"
-msgstr ""
+msgstr "子 %(pid)s が状況 %(code)d で終了しました"
 
 #: cinder/openstack/common/service.py:362
 #, python-format
 msgid "pid %d not in child list"
-msgstr ""
+msgstr "pid %d は子リストにありません"
 
 #: cinder/openstack/common/service.py:392
 #, python-format
 msgid "Caught %s, stopping children"
-msgstr ""
+msgstr "%s が見つかりました。子を停止しています"
 
 #: cinder/openstack/common/service.py:410
 #, python-format
 msgid "Waiting on %d children to exit"
-msgstr ""
+msgstr "%d 個の子で終了を待機しています"
 
 #: cinder/openstack/common/sslutils.py:98
 #, python-format
 msgid "Invalid SSL version : %s"
-msgstr ""
+msgstr "無効な SSL バージョン : %s"
 
 #: cinder/openstack/common/strutils.py:92
 #, python-format
@@ -3658,25 +3747,25 @@ msgstr ""
 
 #: cinder/openstack/common/db/exception.py:44
 msgid "Invalid Parameter: Unicode is not supported by the current database."
-msgstr ""
+msgstr "無効なパラメーター: ユニコードは現在のデータベースではサポートされていません。"
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:487
 msgid "DB exception wrapped."
-msgstr ""
+msgstr "DB 例外がラップされました。"
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:538
 #, python-format
 msgid "Got mysql server has gone away: %s"
-msgstr ""
+msgstr "「MySQL サーバーがなくなりました」を受け取りました: %s"
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:610
 #, python-format
 msgid "SQL connection failed. %s attempts left."
-msgstr ""
+msgstr "SQL 接続が失敗しました。残りの試行回数は %s です。"
 
 #: cinder/openstack/common/db/sqlalchemy/utils.py:33
 msgid "Sort key supplied was not valid."
-msgstr ""
+msgstr "指定されたソート・キーが無効でした。"
 
 #: cinder/openstack/common/scheduler/filters/capabilities_filter.py:54
 #, python-format
@@ -3695,7 +3784,7 @@ msgstr ""
 #: cinder/openstack/common/scheduler/filters/ignore_attempted_hosts_filter.py:52
 #, python-format
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
-msgstr ""
+msgstr "ホスト %(host)s %(pass_msg)s。前に試行したホスト: %(hosts)s"
 
 #: cinder/scheduler/driver.py:69
 msgid "Must implement host_passes_filters"
@@ -3710,9 +3799,8 @@ msgid "Must implement a fallback schedule"
 msgstr "予備の(fallback)スケジューラを実装する必要があります。"
 
 #: cinder/scheduler/driver.py:82
-#, fuzzy
 msgid "Must implement schedule_create_volume"
-msgstr "予備の(fallback)スケジューラを実装する必要があります。"
+msgstr "schedule_create_volume を実装する必要があります。"
 
 #: cinder/scheduler/filter_scheduler.py:98
 #, python-format
@@ -3733,7 +3821,7 @@ msgstr ""
 
 #: cinder/scheduler/filter_scheduler.py:156
 msgid "Invalid value for 'scheduler_max_attempts', must be >=1"
-msgstr ""
+msgstr "'scheduler_max_attempts' の値が無効です。1 以上でなければなりません"
 
 #: cinder/scheduler/filter_scheduler.py:174
 #, python-format
@@ -3741,11 +3829,13 @@ msgid ""
 "Error scheduling %(volume_id)s from last vol-service: %(last_host)s : "
 "%(exc)s"
 msgstr ""
+"最後の vol-service: %(last_host)s からの %(volume_id)s のスケジューリング中にエラーが発生しました: "
+"%(exc)s"
 
 #: cinder/scheduler/filter_scheduler.py:207
 #, python-format
 msgid "Exceeded max scheduling attempts %(max_attempts)d for volume %(volume_id)s"
-msgstr ""
+msgstr "ボリューム %(volume_id)s のスケジュールの最大試行回数 %(max_attempts)d を超過しました"
 
 #: cinder/scheduler/filter_scheduler.py:259
 #, python-format
@@ -3760,19 +3850,19 @@ msgstr ""
 #: cinder/scheduler/host_manager.py:266
 #, python-format
 msgid "Ignoring %(service_name)s service update from %(host)s"
-msgstr ""
+msgstr "%(host)s からの %(service_name)s サービスの更新を無視します"
 
 #: cinder/scheduler/host_manager.py:271
 #, python-format
 msgid "Received %(service_name)s service update from %(host)s."
-msgstr ""
+msgstr "%(service_name)s サービスの更新を %(host)s から受け取りました。"
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3801,12 +3891,12 @@ msgstr ""
 #: cinder/scheduler/manager.py:219
 #, python-format
 msgid "Failed to schedule_%(method)s: %(ex)s"
-msgstr ""
+msgstr "schedule_%(method)s が失敗しました: %(ex)s"
 
 #: cinder/scheduler/scheduler_options.py:68
 #, python-format
 msgid "Could not stat scheduler options file %(filename)s: '%(e)s'"
-msgstr ""
+msgstr "スケジューラー・オプション・ファイル %(filename)s を開始できませんでした: '%(e)s'"
 
 #: cinder/scheduler/scheduler_options.py:78
 #, python-format
@@ -3815,14 +3905,14 @@ msgstr ""
 
 #: cinder/scheduler/filters/capacity_filter.py:43
 msgid "Free capacity not set: volume node info collection broken."
-msgstr ""
+msgstr "空き容量が設定されていません: ボリューム・ノード情報の収集は中断されました。"
 
 #: cinder/scheduler/filters/capacity_filter.py:57
 #, python-format
 msgid ""
 "Insufficient free space for volume creation (requested / avail): "
 "%(requested)s/%(available)s"
-msgstr ""
+msgstr "ボリューム作成用のフリー・スペースが不足しています (要求された量/使用可能な量): %(requested)s/%(available)s"
 
 #: cinder/scheduler/flows/create_volume.py:53
 msgid "No volume_id provided to populate a request_spec from"
@@ -3843,7 +3933,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr "偽のISCSI: %s"
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3855,29 +3945,29 @@ msgstr ""
 #: cinder/tests/fake_driver.py:124 cinder/tests/fake_driver.py:129
 #, python-format
 msgid "LoggingVolumeDriver: %s"
-msgstr ""
+msgstr "LoggingVolumeDriver: %s"
 
 #: cinder/tests/fake_utils.py:70
 #, python-format
 msgid "Faking execution of cmd (subprocess): %s"
-msgstr ""
+msgstr "コマンド (サブプロセス) を疑似実行中: %s"
 
 #: cinder/tests/fake_utils.py:78
 #, python-format
 msgid "Faked command matched %s"
-msgstr ""
+msgstr "偽のコマンドが %s と一致しました"
 
 #: cinder/tests/fake_utils.py:94
 #, python-format
 msgid "Faked command raised an exception %s"
-msgstr ""
+msgstr "偽のコマンドにより例外 %s が発生しました"
 
 #: cinder/tests/fake_utils.py:97
 #, python-format
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
-msgstr ""
+msgstr "偽のコマンドへの応答は stdout='%(stdout)s' stderr='%(stderr)s' です"
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3887,7 +3977,7 @@ msgstr ""
 #: cinder/tests/test_ibm_xiv_ds8k.py:102
 #, python-format
 msgid "Volume not found for instance %(instance_id)s."
-msgstr ""
+msgstr "インスタンス %(instance_id)s のボリュームが見つかりませんでした。"
 
 #: cinder/tests/test_misc.py:58
 #, python-format
@@ -3895,6 +3985,8 @@ msgid ""
 "The following migrations are missing a downgrade:\n"
 "\t%s"
 msgstr ""
+"以下のマイグレーションにダウングレードがありません:\n"
+"\t%s"
 
 #: cinder/tests/test_netapp.py:1327
 msgid "Error not a TypeError."
@@ -3909,49 +4001,55 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
 #: cinder/tests/test_storwize_svc.py:252
 #, python-format
 msgid "unrecognized argument %s"
-msgstr ""
+msgstr "認識されない引数 %s"
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
-msgstr ""
+msgstr "CLI コマンド: %s を実行してください"
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
 " stdout: %(stdout)s\n"
 " stderr: %(stderr)s"
 msgstr ""
+"CLI 出力:\n"
+" stdout: %(stdout)s\n"
+" stderr: %(stderr)s"
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
 " stdout: %(out)s\n"
 " stderr: %(err)s"
 msgstr ""
+"CLI 例外出力:\n"
+" stdout: %(out)s\n"
+" stderr: %(err)s"
 
 #: cinder/tests/test_volume_types.py:60
 #, python-format
 msgid "Given data: %s"
-msgstr ""
+msgstr "指定されたデータ: %s"
 
 #: cinder/tests/test_volume_types.py:61
 #, python-format
 msgid "Result data: %s"
-msgstr ""
+msgstr "結果データ: %s"
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
-msgstr ""
+msgstr "無効な入力"
 
 #: cinder/tests/brick/test_brick_remotefs.py:99
 msgid "Unexpected call to _execute."
@@ -3962,9 +4060,9 @@ msgid "mount failed."
 msgstr ""
 
 #: cinder/tests/integrated/test_login.py:29
-#, fuzzy, python-format
+#, python-format
 msgid "volume: %s"
-msgstr "Detach volume: ボリューム %s をデタッチします"
+msgstr "ボリューム: %s"
 
 #: cinder/tests/integrated/api/client.py:34
 #, python-format
@@ -3973,47 +4071,50 @@ msgid ""
 "Status Code: %(_status)s\n"
 "Body: %(_body)s"
 msgstr ""
+"%(message)s\n"
+"状況コード: %(_status)s\n"
+"本体: %(_body)s"
 
 #: cinder/tests/integrated/api/client.py:44
 msgid "Authentication error"
-msgstr ""
+msgstr "認証エラー"
 
 #: cinder/tests/integrated/api/client.py:52
 msgid "Authorization error"
-msgstr ""
+msgstr "許可エラー"
 
 #: cinder/tests/integrated/api/client.py:60
 msgid "Item not found"
-msgstr ""
+msgstr "項目が見つかりません"
 
 #: cinder/tests/integrated/api/client.py:97
 #, python-format
 msgid "Doing %(method)s on %(relative_url)s"
-msgstr ""
+msgstr "%(relative_url)s 上で %(method)s を実行中"
 
 #: cinder/tests/integrated/api/client.py:100
 #, python-format
 msgid "Body: %s"
-msgstr ""
+msgstr "本体: %s"
 
 #: cinder/tests/integrated/api/client.py:124
 #, python-format
 msgid "%(auth_uri)s => code %(http_status)s"
-msgstr ""
+msgstr "%(auth_uri)s => コード %(http_status)s"
 
 #: cinder/tests/integrated/api/client.py:147
 #, python-format
 msgid "%(relative_uri)s => code %(http_status)s"
-msgstr ""
+msgstr "%(relative_uri)s => コード %(http_status)s"
 
 #: cinder/tests/integrated/api/client.py:158
 msgid "Unexpected status code"
-msgstr ""
+msgstr "予期しない状況コード"
 
 #: cinder/tests/integrated/api/client.py:165
 #, python-format
 msgid "Decoding JSON: %s"
-msgstr ""
+msgstr "JSON のデコード中: %s"
 
 #: cinder/tests/zonemanager/test_brcd_fc_zone_driver.py:124
 #, python-format
@@ -4051,12 +4152,12 @@ msgstr ""
 
 #: cinder/transfer/api.py:102 cinder/volume/api.py:350
 msgid "status must be available"
-msgstr ""
+msgstr "状況は「使用可能」でなければなりません"
 
 #: cinder/transfer/api.py:119
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to create transfer record for %s"
-msgstr "ip %s に対するメタデータの取得に失敗しました。"
+msgstr ""
 
 #: cinder/transfer/api.py:136
 #, python-format
@@ -4069,6 +4170,8 @@ msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG volume "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
+"%(s_pid)s の割り当て量を超過しました。%(s_size)sG のボリュームの作成が試行されました (%(d_quota)dG のうちの "
+"%(d_consumed)dG が既に使用されました)"
 
 #: cinder/transfer/api.py:182
 #, python-format
@@ -4103,7 +4206,7 @@ msgstr ""
 
 #: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
-msgstr ""
+msgstr "ボリュームを削除するための割り当て量の更新に失敗しました"
 
 #: cinder/volume/api.py:228
 #, python-format
@@ -4117,26 +4220,25 @@ msgstr ""
 #: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
-msgstr ""
+msgstr "ボリュームには、まだ従属スナップショットが %d 個あります"
 
 #: cinder/volume/api.py:293 cinder/volume/api.py:333
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
-msgstr ""
+msgstr "検索条件: %s"
 
 #: cinder/volume/api.py:353
 msgid "already attached"
-msgstr ""
+msgstr "既に接続済み"
 
 #: cinder/volume/api.py:360
 msgid "status must be in-use to detach"
 msgstr ""
 
 #: cinder/volume/api.py:371
-#, fuzzy
 msgid "Volume status must be available to reserve"
-msgstr "ボリュームのステータス(status)は available でなければなりません。"
+msgstr "予約するにはボリューム状況は「使用可能」でなければなりません"
 
 #: cinder/volume/api.py:447
 msgid "Snapshot cannot be created while volume is migrating"
@@ -4144,7 +4246,7 @@ msgstr ""
 
 #: cinder/volume/api.py:451
 msgid "must be available"
-msgstr ""
+msgstr "「使用可能」でなければなりません"
 
 #: cinder/volume/api.py:473
 #, python-format
@@ -4152,6 +4254,8 @@ msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
+"%(s_pid)s の割り当て量を超過しました。%(s_size)sG のスナップショットの作成が試行されました (%(d_quota)dG "
+"のうちの %(d_consumed)dG が既に使用されました)"
 
 #: cinder/volume/api.py:485
 #, python-format
@@ -4159,32 +4263,32 @@ msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
+"%(s_pid)s の割り当て量を超過しました。スナップショットの作成が試行されました (%(d_consumed)d "
+"個のスナップショットが既に使用されました)"
 
 #: cinder/volume/api.py:536
-#, fuzzy
 msgid "Volume Snapshot status must be available or error"
-msgstr "ボリュームのステータス(status)は available でなければなりません。"
+msgstr "ボリューム・スナップショット状況は「使用可能」または「エラー」でなければなりません"
 
 #: cinder/volume/api.py:564 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
-msgstr ""
+msgstr "メタデータ・プロパティー・キーがブランクです"
 
 #: cinder/volume/api.py:568
 msgid "Metadata property key greater than 255 characters"
-msgstr ""
+msgstr "メタデータ・プロパティー・キーが 255 文字を超えています"
 
 #: cinder/volume/api.py:572
 msgid "Metadata property value greater than 255 characters"
-msgstr ""
+msgstr "メタデータ・プロパティー値が 255 文字を超えています"
 
 #: cinder/volume/api.py:703 cinder/volume/api.py:777
-#, fuzzy
 msgid "Volume status must be available/in-use."
-msgstr "ボリュームのステータス(status)は available でなければなりません。"
+msgstr "ボリューム状況は「使用可能」/「使用中」でなければなりません。"
 
 #: cinder/volume/api.py:706
 msgid "Volume status is in-use."
-msgstr ""
+msgstr "ボリューム状況は「使用中」です。"
 
 #: cinder/volume/api.py:735
 msgid "Volume status must be available to extend."
@@ -4212,66 +4316,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4298,27 +4402,27 @@ msgstr ""
 #: cinder/volume/driver.py:335
 #, python-format
 msgid "copy_image_to_volume %s."
-msgstr ""
+msgstr "copy_image_to_volume %s。"
 
 #: cinder/volume/driver.py:352
 #, python-format
 msgid "copy_volume_to_image %s."
-msgstr ""
+msgstr "copy_volume_to_image %s。"
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4333,18 +4437,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr "ボリューム %s のエクスポートを解除します。"
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4367,9 +4471,9 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
-msgstr ""
+msgstr "iSCSI provider_location が保管されていません。ディスカバリーを使用しています"
 
 #: cinder/volume/driver.py:652
 #, python-format
@@ -4382,27 +4486,27 @@ msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
 #: cinder/volume/driver.py:701
-#, fuzzy, python-format
+#, python-format
 msgid "Could not find iSCSI export for volume %s"
-msgstr "ボリューム %s 用の iSCSI エクスポートが見つかりません"
+msgstr "ボリューム %s の iSCSI エクスポートが見つかりませんでした"
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
-msgstr ""
+msgstr "iSCSI ディスカバリー: %s が見つかりました"
 
 #: cinder/volume/driver.py:802
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4410,37 +4514,44 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
+msgstr "ドライバーは initialize_connection を実装する必要があります"
+
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
 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 ""
+msgstr "remove_export をスキップしています。このボリュームに関してプロビジョンされた iscsi_target はありません: %s"
 
 #: cinder/volume/iscsi.py:80
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
-msgstr ""
+msgstr "remove_export をスキップしています。このボリュームに関して現在エクスポートされている iscsi_target はありません: %s"
 
 #: cinder/volume/iscsi.py:100
 msgid "Detected inconsistency in provider_location id"
-msgstr ""
+msgstr "provider_location ID の不整合が検出されました"
 
 #: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:572
 #: cinder/volume/drivers/huawei/rest_common.py:1225
 #, python-format
 msgid "%s"
-msgstr ""
+msgstr "%s"
 
 #: cinder/volume/iscsi.py:184
 #, python-format
 msgid "Symbolic link %s not found"
-msgstr ""
+msgstr "シンボリック・リンク %s が見つかりません"
 
 #: cinder/volume/iscsi.py:251
 #, python-format
@@ -4450,288 +4561,281 @@ msgstr ""
 #: cinder/volume/iscsi.py:252
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
+msgstr "ensure_export をスキップしています。このボリュームに関する iscsi_target プロビジョンはありません: %s"
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
-msgstr ""
+msgstr "ドライバー・パス %s は使用すべきでないため、ご使用の構成を新規パスに合わせて更新してください。"
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr "%s 個のボリュームを再エクスポートします。"
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr "ボリューム %s のエキスポートをスキップします。"
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
-msgstr ""
+msgstr "進行中のすべての削除操作を再開しています"
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
-msgstr ""
+msgstr "ボリューム: %s で削除を再開しています"
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr "ボリューム %s を削除します。"
 
-#: cinder/volume/manager.py:390
-#, fuzzy
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
-msgstr "ボリュームはこのノードのローカルではありません。"
+msgstr "ボリュームは、このノードに対してローカルではありません"
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
-msgstr ""
+msgstr "ボリュームの削除時に使用率の更新に失敗しました"
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr "ボリューム %s の削除に成功しました。"
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
-msgstr ""
+msgstr "スナップショット %s: 作成中"
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
-msgstr ""
+msgstr "スナップショット %s: 正常に作成されました"
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
-msgstr ""
+msgstr "スナップショット %s: 削除中"
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
-msgstr ""
+msgstr "スナップショットの削除時に使用率の更新に失敗しました"
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
-msgstr ""
+msgstr "スナップショット %s: 正常に削除されました"
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
-msgstr ""
+msgstr "別のインスタンスが接続中"
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
-#, fuzzy, python-format
+#: cinder/volume/manager.py:686
+#, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
-msgstr "ボリューム %(volume_id)s をインスタンス %(instance_id)s のデバイス %(device)s に接続"
+msgstr "イメージ (%(image_id)s) に対するボリューム %(volume_id)s のアップロードが成功しました"
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
-msgstr ""
+msgstr "ボリューム状況の更新中"
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
-msgstr ""
+msgstr "通知 {%s} を受け取りました"
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4747,13 +4851,13 @@ msgstr ""
 #: cinder/volume/volume_types.py:43
 #, python-format
 msgid "DB error: %s"
-msgstr ""
+msgstr "DB エラー: %s"
 
 #: cinder/volume/qos_specs.py:123 cinder/volume/qos_specs.py:140
 #: cinder/volume/qos_specs.py:272 cinder/volume/volume_types.py:52
 #: cinder/volume/volume_types.py:99
 msgid "id cannot be None"
-msgstr ""
+msgstr "ID を「なし」にすることはできません"
 
 #: cinder/volume/qos_specs.py:156
 #, python-format
@@ -4784,32 +4888,32 @@ msgstr ""
 
 #: cinder/volume/qos_specs.py:284 cinder/volume/volume_types.py:111
 msgid "name cannot be None"
-msgstr ""
+msgstr "名前を「なし」にすることはできません"
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
-msgstr ""
+msgstr "ボリューム: %s でセキュア削除を実行しています"
 
 #: cinder/volume/volume_types.py:130
 #, python-format
 msgid ""
 "Default volume type is not found, please check default_volume_type "
 "config: %s"
-msgstr ""
+msgstr "デフォルトのボリューム・タイプが見つかりません。default_volume_type config: %s をチェックしてください"
 
 #: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:284
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
-#, fuzzy, python-format
+#, python-format
 msgid "Creating clone of volume: %s"
-msgstr "Create volume: %s GBのボリュームを作成します。"
+msgstr "ボリューム: %s の複製を作成しています"
 
 #: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
@@ -4919,11 +5023,11 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
-#, fuzzy, python-format
+#, python-format
 msgid "Error running SSH command: %s"
-msgstr "コマンド実行において予期しないエラーが発生しました。"
+msgstr "SSH コマンドの実行中にエラーが発生しました: %s"
 
 #: cinder/volume/drivers/eqlx.py:282
 #, python-format
@@ -4999,219 +5103,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
-msgstr ""
+msgstr "Gluster 構成ファイルが構成されていません (%s)"
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
-msgstr ""
+msgstr "Gluster 構成ファイルが %(config)s に存在しません"
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
-msgstr ""
+msgstr "mount.glusterfs がインストールされていません"
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
-#, fuzzy, python-format
+#, python-format
 msgid "casted to %s"
-msgstr "ネストした戻り値: %s"
+msgstr "%s へキャストされました"
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
-msgstr ""
+msgstr "ボリューム %s に provider_location が指定されていません。スキップ中"
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
-msgstr ""
+msgstr "%s のマウント中の例外"
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5233,7 +5337,7 @@ msgstr ""
 #: cinder/volume/drivers/lvm.py:246
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
-msgstr ""
+msgstr "スナップショット: %s が見つかりません。削除操作をスキップ中"
 
 #: cinder/volume/drivers/lvm.py:347
 #, python-format
@@ -5276,19 +5380,19 @@ msgid " but size is now %d"
 msgstr ""
 
 #: cinder/volume/drivers/nfs.py:380
-#, fuzzy, python-format
+#, python-format
 msgid "%s is already mounted"
-msgstr "グループ %s は既に存在しています。"
+msgstr "%s は既にマウントされています"
 
 #: cinder/volume/drivers/nfs.py:432
 #, python-format
 msgid "There's no NFS config file configured (%s)"
-msgstr ""
+msgstr "NFS 構成ファイルが構成されていません (%s)"
 
 #: cinder/volume/drivers/nfs.py:437
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
-msgstr ""
+msgstr "NFS 構成ファイルが %(config)s に存在しません"
 
 #: cinder/volume/drivers/nfs.py:442
 #, python-format
@@ -5320,176 +5424,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:212
+#, python-format
 msgid "error opening rbd image %s"
-msgstr "xvp の開始中にエラー: %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
-#, fuzzy
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
-msgstr "libvirt %s へ接続します。"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
-msgstr ""
+msgstr "ボリューム状況の最新表示エラー"
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:703
+#, python-format
 msgid "connection data: %s"
-msgstr "libvirt %s へ接続します。"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
-msgstr ""
+msgstr "rbd 内に保管されていません"
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
-msgstr ""
+msgstr "空白コンポーネント"
 
-#: cinder/volume/drivers/rbd.py:718
-#, fuzzy
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
-msgstr "snapshotting: インスタンス %s のスナップショットを取得中"
+msgstr "rbd スナップショットではありません"
 
-#: cinder/volume/drivers/rbd.py:730
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:731
+#, python-format
 msgid "not cloneable: %s"
-msgstr "応答 %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
-msgstr ""
+msgstr "%s は別の ceph クラスター内にあります"
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:754
+#, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
-msgstr "ボリューム %s の存在が確認できません。"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5497,25 +5599,25 @@ msgstr ""
 
 #: cinder/volume/drivers/scality.py:67
 msgid "Value required for 'scality_sofs_config'"
-msgstr ""
+msgstr "'scality_sofs_config' の値が必要です"
 
 #: cinder/volume/drivers/scality.py:78
 #, python-format
 msgid "Cannot access 'scality_sofs_config': %s"
-msgstr ""
+msgstr "'scality_sofs_config' にアクセスできません: %s"
 
 #: cinder/volume/drivers/scality.py:84
 msgid "Cannot execute /sbin/mount.sofs"
-msgstr ""
+msgstr "/sbin/mount.sofs を実行できません"
 
 #: cinder/volume/drivers/scality.py:105
 msgid "Cannot mount Scality SOFS, check syslog for errors"
-msgstr ""
+msgstr "Scality SOFS をマウントできません。syslog でエラーについて確認してください"
 
 #: cinder/volume/drivers/scality.py:139
 #, python-format
 msgid "Cannot find volume dir for Scality SOFS at '%s'"
-msgstr ""
+msgstr "'%s' の Scality SOFS 用のボリューム dir が見つかりません"
 
 #: cinder/volume/drivers/sheepdog.py:59
 #, python-format
@@ -5529,7 +5631,7 @@ msgstr "Sheepdog が機能していません"
 #: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
-msgstr ""
+msgstr "SolidFire API 呼び出しのペイロード: %s"
 
 #: cinder/volume/drivers/solidfire.py:149
 #, python-format
@@ -5558,54 +5660,53 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
-msgstr ""
+msgstr "json.loads() への呼び出しで例外が発生しました: %s"
 
 #: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
-msgstr ""
+msgstr "SolidFire API 呼び出しの結果: %s"
 
 #: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
-msgstr ""
+msgstr "複製操作が検出されました: %s"
 
 #: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
-msgstr ""
+msgstr "スナップショットの再試行前に未完了の操作を待っています: %s"
 
 #: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
-msgstr ""
+msgstr "xDBVersionMismatch が検出されました。再試行回数が 5 のうちの %s"
 
 #: cinder/volume/drivers/solidfire.py:200
 #: cinder/volume/drivers/solidfire.py:269
 #: cinder/volume/drivers/solidfire.py:364
-#, fuzzy, python-format
+#, python-format
 msgid "API response: %s"
-msgstr "応答 %s"
+msgstr "API 応答: %s"
 
 #: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
-msgstr ""
+msgstr "solidfire アカウントが見つかりました: %s"
 
 #: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
-msgstr ""
+msgstr "solidfire アカウント: %s は存在しません。作成します..."
 
 #: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
-msgstr ""
+msgstr "get_by_account でのボリューム SolidFire-ID: %s の検索に失敗しました!"
 
 #: cinder/volume/drivers/solidfire.py:396
-#, fuzzy
 msgid "Failed to get model update from clone"
-msgstr "ip %s に対するメタデータの取得に失敗しました。"
+msgstr "複製からのモデル更新の取得に失敗しました"
 
 #: cinder/volume/drivers/solidfire.py:408
 #, python-format
@@ -5615,7 +5716,7 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
-msgstr ""
+msgstr "%s を使用した複数の有効な事前設定が検出されました"
 
 #: cinder/volume/drivers/solidfire.py:458
 #, python-format
@@ -5625,26 +5726,26 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
-msgstr ""
+msgstr "SolidFire ボリューム ID %(sfid)s が cinder ID %(uuid)s にマップされました。"
 
 #: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
-msgstr ""
+msgstr "ボリューム %s が SF クラスターで検出されません。"
 
 #: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
-msgstr ""
+msgstr "%(count)s 個のボリュームが ID: %(uuid)s にマップされたことが検出されました。"
 
 #: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
-msgstr ""
+msgstr "SolidFire delete_volume を開始..."
 
 #: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
-msgstr ""
+msgstr "ボリューム ID %s のアカウントが SolidFire Cluster で検出されませんでした!"
 
 #: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
@@ -5657,23 +5758,23 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
-msgstr ""
+msgstr "ボリューム ID %s が SolidFire Cluster で検出されませんでした!"
 
 #: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
-msgstr ""
+msgstr "SolidFire delete_volume の設定中"
 
 #: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
-msgstr ""
+msgstr "SolidFire ensure_export の実行中..."
 
 #: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
-msgstr ""
+msgstr "SolidFire create_export の実行中..."
 
 #: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
@@ -5685,31 +5786,30 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
-msgstr ""
+msgstr "クラスター状況情報の更新中"
 
 #: cinder/volume/drivers/solidfire.py:671
-#, fuzzy
 msgid "Failed to get updated stats"
-msgstr "インスタンス終了処理を開始します。"
+msgstr "更新された状況の取得に失敗しました"
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
 #: cinder/volume/drivers/zadara.py:236
 #, python-format
 msgid "Sending %(method)s to %(url)s. Body \"%(body)s\""
-msgstr ""
+msgstr "%(method)s を %(url)s に送信中。本文 \"%(body)s\""
 
 #: cinder/volume/drivers/zadara.py:260
 #, python-format
 msgid "Operation completed. %(data)s"
-msgstr ""
+msgstr "操作が完了しました。%(data)s"
 
 #: cinder/volume/drivers/zadara.py:357
 #, python-format
@@ -5719,7 +5819,7 @@ msgstr ""
 #: cinder/volume/drivers/zadara.py:408 cinder/volume/drivers/zadara.py:531
 #, python-format
 msgid "Volume %(name)s could not be found. It might be already deleted"
-msgstr ""
+msgstr "ボリューム %(name)s が見つかりませんでした。すでに削除されている可能性があります"
 
 #: cinder/volume/drivers/zadara.py:438
 #, python-format
@@ -5760,7 +5860,7 @@ msgstr ""
 #: cinder/volume/drivers/zadara.py:614
 #, python-format
 msgid "Attach properties: %(properties)s"
-msgstr ""
+msgstr "プロパティーの付加: %(properties)s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:125
 #, python-format
@@ -5768,22 +5868,22 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr "ボリューム %s 用の iSCSI エクスポートが見つかりません"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
-#, fuzzy, python-format
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
+#, python-format
 msgid "Cannot find device number for volume %s"
-msgstr "ボリューム %s 用の iSCSI エクスポートが見つかりません"
+msgstr "ボリューム %s の装置番号が見つかりません"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
-#, fuzzy, python-format
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
+#, python-format
 msgid "Found iSCSI endpoint: %s"
-msgstr "NotFound 発生: %s"
+msgstr "iSCSI エンドポイントが見つかりました: %s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:209
 #, python-format
@@ -5799,36 +5899,36 @@ msgstr ""
 msgid ""
 "Module PyWBEM not installed.  Install PyWBEM using the python-pywbem "
 "package."
-msgstr ""
+msgstr "モジュール PyWBEM がインストールされていません。python-pywbem パッケージを使用して PyWBEM をインストールしてください。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:82
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:125
 msgid "Entering create_volume."
-msgstr ""
+msgstr "create_volume の入力中。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:86
-#, fuzzy, python-format
+#, python-format
 msgid "Create Volume: %(volume)s  Size: %(size)lu"
-msgstr "ボリューム %(vol_name)s: サイズ %(vol_size)sG のlvを作成します。"
+msgstr "ボリュームの作成: %(volume)s サイズ: %(size)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:94
 #, python-format
 msgid "Create Volume: %(volume)s  Storage type: %(storage_type)s"
-msgstr ""
+msgstr "ボリュームの作成: %(volume)s ストレージ・タイプ: %(storage_type)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:101
 #, python-format
 msgid ""
 "Create Volume: %(volume)s  Pool: %(pool)s  Storage System: "
 "%(storage_system)s"
-msgstr ""
+msgstr "ボリュームの作成: %(volume)s プール: %(pool)s  ストレージ・システム: %(storage_system)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:110
 #, python-format
 msgid ""
 "Error Create Volume: %(volumename)s. Storage Configuration Service not "
 "found for pool %(storage_type)s."
-msgstr ""
+msgstr "ボリュームの作成エラー: %(volumename)s。プール %(storage_type)s のストレージ構成サービスが検出されませんでした。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:120
 #, python-format
@@ -5841,14 +5941,14 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_smis_common.py:136
 #, python-format
 msgid "Create Volume: %(volumename)s  Return code: %(rc)lu"
-msgstr ""
+msgstr "ボリュームの作成: %(volumename)s 戻りコード: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:143
 #, python-format
 msgid ""
 "Error Create Volume: %(volumename)s.  Return code: %(rc)lu.  Error: "
 "%(error)s"
-msgstr ""
+msgstr "ボリュームの作成エラー: %(volumename)s。戻りコード: %(rc)lu。エラー: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:164
 #, python-format
@@ -5860,14 +5960,14 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_smis_common.py:176
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:348
 msgid "Entering create_volume_from_snapshot."
-msgstr ""
+msgstr "create_volume_from_snapshot の入力中。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:181
 #, python-format
 msgid ""
 "Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s"
-msgstr ""
+msgstr "スナップショットからのボリュームの作成: ボリューム: %(volumename)s  スナップショット: %(snapshotname)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:191
 #, python-format
@@ -5876,6 +5976,8 @@ msgid ""
 "%(snapshotname)s  Snapshot Instance: %(snapshotinstance)s  Storage "
 "System: %(storage_system)s."
 msgstr ""
+"スナップショットからのボリュームの作成: ボリューム: %(volumename)s  スナップショット: %(snapshotname)s "
+"スナップショット・インスタンス: %(snapshotinstance)s ストレージ・システム: %(storage_system)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:201
 #, python-format
@@ -5883,6 +5985,8 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s. Create Volume from Snapshot is NOT supported on VMAX."
 msgstr ""
+"スナップショットからのボリュームの作成エラー: ボリューム: %(volumename)s  スナップショット: "
+"%(snapshotname)s。スナップショットからのボリュームの作成は VMAX ではサポートされません。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:212
 #, python-format
@@ -5891,6 +5995,8 @@ msgid ""
 "%(snapshotname)s. Cannot find Replication Service to create volume from "
 "snapshot."
 msgstr ""
+"スナップショットからのボリュームの作成エラー: ボリューム: %(volumename)s  スナップショット: "
+"%(snapshotname)s。スナップショットからボリュームを作成するレプリカ生成サービスを検出できません。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:221
 #, python-format
@@ -5900,6 +6006,9 @@ msgid ""
 "%(service)s  ElementName: %(elementname)s  SyncType: 8  SourceElement: "
 "%(sourceelement)s"
 msgstr ""
+"スナップショットからのボリュームの作成: ボリューム: %(volumename)s スナップショット: %(snapshotname)s "
+"メソッド: CreateElementReplica ReplicationService: %(service)s ElementName: "
+"%(elementname)s SyncType: 8 SourceElement: %(sourceelement)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:242
 #, python-format
@@ -5907,6 +6016,8 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  "
 "Snapshot:%(snapshotname)s.  Return code: %(rc)lu.Error: %(error)s"
 msgstr ""
+"スナップショットからのボリュームの作成エラー: ボリューム: %(volumename)s  スナップショット: "
+"%(snapshotname)s。戻りコード: %(rc)lu。エラー: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:268
 #, python-format
@@ -5915,6 +6026,8 @@ msgid ""
 "%(snapshotname)s.  Successfully clone volume from snapshot.  Finding the "
 "clone relationship."
 msgstr ""
+"スナップショットからのボリュームの作成: ボリューム: %(volumename)s スナップショット: "
+"%(snapshotname)s。スナップショットからのボリュームの複製に成功しました。複製関係の検出中。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:280
 #, python-format
@@ -5924,6 +6037,9 @@ msgid ""
 "ModifyReplicaSynchronization ReplicationService: %(service)s  Operation: "
 "8  Synchronization: %(sync_name)s"
 msgstr ""
+"スナップショットからのボリュームの作成: ボリューム: %(volumename)s スナップショット: "
+"%(snapshotname)s。複製関係を削除してください。メソッド: ModifyReplicaSynchronization "
+"ReplicationService: %(service)s 操作: 8  同期: %(sync_name)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:296
 #, python-format
@@ -5931,6 +6047,8 @@ msgid ""
 "Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu"
 msgstr ""
+"スナップショットからのボリュームの作成: ボリューム: %(volumename)s スナップショット: %(snapshotname)s "
+"戻りコード: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:305
 #, python-format
@@ -5938,6 +6056,8 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s.  Return code: %(rc)lu.  Error: %(error)s"
 msgstr ""
+"スナップショットからのボリュームの作成エラー: ボリューム: %(volumename)s  スナップショット: "
+"%(snapshotname)s。戻りコード: %(rc)lu。エラー: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:317
 #, python-format
@@ -5945,17 +6065,19 @@ msgid ""
 "Leaving create_volume_from_snapshot: Volume: %(volumename)s Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu."
 msgstr ""
+"create_volume_from_snapshot の終了中: ボリューム: %(volumename)s スナップショット: "
+"%(snapshotname)s 戻りコード: %(rc)lu。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:328
 msgid "Entering create_cloned_volume."
-msgstr ""
+msgstr "create_cloned_volume の入力中。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:333
 #, python-format
 msgid ""
 "Create a Clone from Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s"
-msgstr ""
+msgstr "ボリュームからの複製の作成: ボリューム: %(volumename)s ソース・ボリューム: %(srcname)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:343
 #, python-format
@@ -5963,6 +6085,8 @@ msgid ""
 "Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
 "  Source Instance: %(src_instance)s  Storage System: %(storage_system)s."
 msgstr ""
+"複製ボリュームの作成: ボリューム: %(volumename)s ソース・ボリューム: %(srcname)s  ソース・インスタンス: "
+"%(src_instance)s ストレージ・システム: %(storage_system)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:353
 #, python-format
@@ -5970,6 +6094,8 @@ msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s. Cannot find Replication Service to create cloned volume."
 msgstr ""
+"複製ボリュームの作成エラー: ボリューム: %(volumename)s ソース・ボリューム: "
+"%(srcname)s。複製ボリュームを作成するレプリカ生成サービスを検出できません。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:362
 #, python-format
@@ -5979,6 +6105,9 @@ msgid ""
 "ElementName: %(elementname)s  SyncType: 8  SourceElement: "
 "%(sourceelement)s"
 msgstr ""
+"複製ボリュームの作成: ボリューム: %(volumename)s ソース・ボリューム: %(srcname)s メソッド: "
+"CreateElementReplica ReplicationService: %(service)s ElementName: "
+"%(elementname)s SyncType: 8 SourceElement: %(sourceelement)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:383
 #, python-format
@@ -5986,6 +6115,8 @@ msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source "
 "Volume:%(srcname)s.  Return code: %(rc)lu.Error: %(error)s"
 msgstr ""
+"複製ボリュームの作成エラー: ボリューム: %(volumename)s ソース・ボリューム:%(srcname)s。戻りコード: "
+"%(rc)lu。エラー: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:409
 #, python-format
@@ -5994,6 +6125,8 @@ msgid ""
 "  Successfully cloned volume from source volume.  Finding the clone "
 "relationship."
 msgstr ""
+"複製ボリュームの作成: ボリューム: %(volumename)s ソース・ボリューム: "
+"%(srcname)s。ソース・ボリュームからボリュームが正常に複製されました。複製関係を検出中。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:421
 #, python-format
@@ -6003,13 +6136,16 @@ msgid ""
 "ReplicationService: %(service)s  Operation: 8  Synchronization: "
 "%(sync_name)s"
 msgstr ""
+"複製ボリュームの作成: ボリューム: %(volumename)s ソース・ボリューム: "
+"%(srcname)s。複製関係を削除してください。メソッド: ModifyReplicaSynchronization "
+"ReplicationService: %(service)s 操作: 8 同期: %(sync_name)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:437
 #, python-format
 msgid ""
 "Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
 "  Return code: %(rc)lu"
-msgstr ""
+msgstr "複製ボリュームの作成: ボリューム: %(volumename)s ソース・ボリューム: %(srcname)s 戻りコード: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:446
 #, python-format
@@ -6017,6 +6153,8 @@ msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s.  Return code: %(rc)lu.  Error: %(error)s"
 msgstr ""
+"複製ボリュームの作成エラー: ボリューム: %(volumename)s ソース・ボリューム: %(srcname)s。戻りコード: "
+"%(rc)lu。エラー: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:458
 #, python-format
@@ -6024,33 +6162,35 @@ msgid ""
 "Leaving create_cloned_volume: Volume: %(volumename)s Source Volume: "
 "%(srcname)s  Return code: %(rc)lu."
 msgstr ""
+"create_cloned_volume の終了中: ボリューム: %(volumename)s ソース・ボリューム: %(srcname)s "
+"戻りコード: %(rc)lu。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:469
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:178
 msgid "Entering delete_volume."
-msgstr ""
+msgstr "delete_volume の入力中。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:471
 #, python-format
 msgid "Delete Volume: %(volume)s"
-msgstr ""
+msgstr "ボリュームの削除: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:478
 #, python-format
 msgid "Volume %(name)s not found on the array. No volume to delete."
-msgstr ""
+msgstr "ボリューム %(name)s がアレイ上に見つかりません。削除するボリュームがありません。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:488
 #, python-format
 msgid ""
 "Error Delete Volume: %(volumename)s. Storage Configuration Service not "
 "found."
-msgstr ""
+msgstr "ボリュームの削除エラー: %(volumename)s。ストレージ構成サービスが検出されませんでした。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:496
 #, python-format
 msgid "Delete Volume: %(name)s  DeviceID: %(deviceid)s"
-msgstr ""
+msgstr "ボリュームの削除: %(name)s DeviceID: %(deviceid)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:500
 #, python-format
@@ -6058,42 +6198,44 @@ msgid ""
 "Delete Volume: %(name)s  Method: EMCReturnToStoragePool ConfigServic: "
 "%(service)s  TheElement: %(vol_instance)s"
 msgstr ""
+"ボリュームの削除: %(name)s  メソッド: EMCReturnToStoragePool ConfigServic: "
+"%(service)s TheElement: %(vol_instance)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:514
 #, python-format
 msgid ""
 "Error Delete Volume: %(volumename)s.  Return code: %(rc)lu.  Error: "
 "%(error)s"
-msgstr ""
+msgstr "ボリュームの削除エラー: %(volumename)s。戻りコード: %(rc)lu。エラー: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:523
 #, python-format
 msgid "Leaving delete_volume: %(volumename)s  Return code: %(rc)lu"
-msgstr ""
+msgstr "delete_volume の終了中: %(volumename)s 戻りコード: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:530
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:275
 msgid "Entering create_snapshot."
-msgstr ""
+msgstr "create_snapshot の入力中。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:534
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:278
 #, python-format
 msgid "Create snapshot: %(snapshot)s: volume: %(volume)s"
-msgstr ""
+msgstr "スナップショットの作成: %(snapshot)s: ボリューム: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:544
 #: cinder/volume/drivers/emc/emc_smis_common.py:972
 #, python-format
 msgid "Device ID: %(deviceid)s: Storage System: %(storagesystem)s"
-msgstr ""
+msgstr "デバイス ID: %(deviceid)s: ストレージ・システム: %(storagesystem)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:551
 #: cinder/volume/drivers/emc/emc_smis_common.py:553
 #: cinder/volume/drivers/emc/emc_smis_common.py:639
 #, python-format
 msgid "Cannot find Replication Service to create snapshot for volume %s."
-msgstr ""
+msgstr "ボリューム %s のスナップショットを作成するレプリカ生成サービスが見つかりません。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:558
 #, python-format
@@ -6102,6 +6244,9 @@ msgid ""
 "Source: %(volume)s  Replication Service: %(service)s  ElementName: "
 "%(elementname)s  Sync Type: 7  SourceElement: %(sourceelement)s."
 msgstr ""
+"スナップショットの作成: メソッド: CreateElementReplica: ターゲット: %(snapshot)s ソース: "
+"%(volume)s レプリカ生成サービス: %(service)s ElementName: %(elementname)s 同期タイプ: 7 "
+"SourceElement: %(sourceelement)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:574
 #, python-format
@@ -6109,6 +6254,8 @@ msgid ""
 "Create Snapshot: Volume: %(volumename)s  Snapshot: %(snapshotname)s  "
 "Return code: %(rc)lu"
 msgstr ""
+"スナップショットの作成: ボリューム: %(volumename)s スナップショット: %(snapshotname)s 戻りコード: "
+"%(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:583
 #, python-format
@@ -6123,17 +6270,19 @@ msgid ""
 "Leaving create_snapshot: Snapshot: %(snapshot)s Volume: %(volume)s  "
 "Return code: %(rc)lu."
 msgstr ""
+"create_snapshot の終了中: スナップショット: %(snapshot)s ボリューム: %(volume)s 戻りコード: "
+"%(rc)lu。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:613
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:302
 msgid "Entering delete_snapshot."
-msgstr ""
+msgstr "delete_snapshot の入力中。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:617
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:306
 #, python-format
 msgid "Delete Snapshot: %(snapshot)s: volume: %(volume)s"
-msgstr ""
+msgstr "スナップショットの削除: %(snapshot)s: ボリューム: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:623
 #, python-format
@@ -6141,6 +6290,8 @@ msgid ""
 "Delete Snapshot: %(snapshot)s: volume: %(volume)s. Finding "
 "StorageSychronization_SV_SV."
 msgstr ""
+"スナップショットの削除: %(snapshot)s: ボリューム: %(volume)s。StorageSychronization_SV_SV "
+"を検出中。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:631
 #, python-format
@@ -6148,6 +6299,8 @@ msgid ""
 "Snapshot: %(snapshot)s: volume: %(volume)s not found on the array. No "
 "snapshot to delete."
 msgstr ""
+"スナップショット: %(snapshot)s: ボリューム: %(volume)s "
+"がアレイ上に見つかりません。削除するスナップショットがありません。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:646
 #, python-format
@@ -6156,6 +6309,9 @@ msgid ""
 "ModifyReplicaSynchronization:  Replication Service: %(service)s  "
 "Operation: 19  Synchronization: %(sync_name)s."
 msgstr ""
+"スナップショットの削除: ターゲット: %(snapshot)s ソース: %(volume)s。メソッド: "
+"ModifyReplicaSynchronization: レプリカ生成サービス: %(service)s 操作: 19 同期: "
+"%(sync_name)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:662
 #, python-format
@@ -6163,6 +6319,8 @@ msgid ""
 "Delete Snapshot: Volume: %(volumename)s  Snapshot: %(snapshotname)s  "
 "Return code: %(rc)lu"
 msgstr ""
+"スナップショットの削除: ボリューム: %(volumename)s スナップショット: %(snapshotname)s 戻りコード: "
+"%(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:671
 #, python-format
@@ -6170,6 +6328,8 @@ msgid ""
 "Error Delete Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s. Return code: %(rc)lu. Error: %(error)s"
 msgstr ""
+"スナップショットの削除エラー: ボリューム: %(volumename)s スナップショット: %(snapshotname)s。戻りコード: "
+"%(rc)lu。エラー: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:696
 #: cinder/volume/drivers/emc/emc_smis_common.py:711
@@ -6197,6 +6357,8 @@ msgid ""
 "Leaving delete_snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu."
 msgstr ""
+"delete_snapshot の終了中: ボリューム: %(volumename)s スナップショット: %(snapshotname)s "
+"戻りコード: %(rc)lu。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:745
 #, python-format
@@ -6204,21 +6366,23 @@ msgid ""
 "ExposePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(lun_name)s"
 "  InitiatorPortIDs: %(initiator)s  DeviceAccesses: 2"
 msgstr ""
+"ExposePaths: %(vol)s ConfigServicie: %(service)s LUNames: %(lun_name)s  "
+"InitiatorPortIDs: %(initiator)s DeviceAccesses: 2"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:760
 #, python-format
 msgid "ExposePaths parameter LunMaskingSCSIProtocolController: %(lunmasking)s"
-msgstr ""
+msgstr "ExposePaths パラメーター LunMaskingSCSIProtocolController: %(lunmasking)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:771
-#, fuzzy, python-format
+#, python-format
 msgid "Error mapping volume %s."
-msgstr "xvp の開始中にエラー: %s"
+msgstr "ボリューム %s のマッピング・エラー。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:775
-#, fuzzy, python-format
+#, python-format
 msgid "ExposePaths for volume %s completed successfully."
-msgstr "ボリューム %s の削除に成功しました。"
+msgstr "ボリューム %s の ExposePaths が正常に完了しました。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:791
 #, python-format
@@ -6226,16 +6390,18 @@ msgid ""
 "HidePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(device_id)s  "
 "LunMaskingSCSIProtocolController: %(lunmasking)s"
 msgstr ""
+"HidePaths: %(vol)s  ConfigServicie: %(service)s LUNames: %(device_id)s "
+"LunMaskingSCSIProtocolController: %(lunmasking)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:804
 #, python-format
 msgid "Error unmapping volume %s."
-msgstr ""
+msgstr "ボリューム %s のマップ解除エラー。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:808
-#, fuzzy, python-format
+#, python-format
 msgid "HidePaths for volume %s completed successfully."
-msgstr "ボリューム %s の削除に成功しました。"
+msgstr "ボリューム %s の HidePaths が正常に完了しました。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:821
 #, python-format
@@ -6243,16 +6409,18 @@ msgid ""
 "AddMembers: ConfigServicie: %(service)s  MaskingGroup: %(masking_group)s"
 "  Members: %(vol)s"
 msgstr ""
+"AddMembers: ConfigServicie: %(service)s MaskingGroup: %(masking_group)s "
+"メンバー: %(vol)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:836
 #, python-format
 msgid "Error mapping volume %(vol)s. %(error)s"
-msgstr ""
+msgstr "ボリューム %(vol)s のマッピング・エラー。%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:841
-#, fuzzy, python-format
+#, python-format
 msgid "AddMembers for volume %s completed successfully."
-msgstr "ボリューム %s の削除に成功しました。"
+msgstr "ボリューム %s の AddMembers が正常に完了しました。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:854
 #, python-format
@@ -6260,52 +6428,54 @@ msgid ""
 "RemoveMembers: ConfigServicie: %(service)s  MaskingGroup: "
 "%(masking_group)s  Members: %(vol)s"
 msgstr ""
+"RemoveMembers: ConfigServicie: %(service)s MaskingGroup: "
+"%(masking_group)s メンバー: %(vol)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:867
 #, python-format
 msgid "Error unmapping volume %(vol)s. %(error)s"
-msgstr ""
+msgstr "ボリューム %(vol)s のマップ解除エラー。%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:872
-#, fuzzy, python-format
+#, python-format
 msgid "RemoveMembers for volume %s completed successfully."
-msgstr "ボリューム %s の削除に成功しました。"
+msgstr "ボリューム %s の RemoveMembers が正常に完了しました。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:878
 #, python-format
 msgid "Map volume: %(volume)s"
-msgstr ""
+msgstr "ボリュームのマッピング: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:887
 #: cinder/volume/drivers/emc/emc_smis_common.py:917
 #, python-format
 msgid "Cannot find Controller Configuration Service for storage system %s"
-msgstr ""
+msgstr "ストレージ・システム %s のコントローラー構成サービスが見つかりません"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:901
 #, python-format
 msgid "Unmap volume: %(volume)s"
-msgstr ""
+msgstr "ボリュームのマップ解除: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:907
 #, python-format
 msgid "Volume %s is not mapped. No volume to unmap."
-msgstr ""
+msgstr "ボリューム %s はマップされていません。マップ解除するボリュームがありません。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:931
 #, python-format
 msgid "Initialize connection: %(volume)s"
-msgstr ""
+msgstr "接続の初期化: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:937
 #, python-format
 msgid "Volume %s is already mapped."
-msgstr ""
+msgstr "ボリューム %s はすでにマップされています。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:949
 #, python-format
 msgid "Terminate connection: %(volume)s"
-msgstr ""
+msgstr "接続の強制終了: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:956
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:197
@@ -6361,16 +6531,16 @@ msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1063
 msgid "Storage type not found."
-msgstr ""
+msgstr "ストレージ・タイプが見つかりません。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1079
 #, python-format
 msgid "Found Masking View: %s"
-msgstr ""
+msgstr "マスキング表示が見つかりました: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1082
 msgid "Masking View not found."
-msgstr ""
+msgstr "マスキング表示が見つかりません。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1097
 #, python-format
@@ -6383,100 +6553,99 @@ msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1122
 msgid "Ecom user not found."
-msgstr ""
+msgstr "Ecom ユーザーが見つかりません。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1142
 #, python-format
 msgid "Ecom IP: %(ecomIp)s Port: %(ecomPort)s"
-msgstr ""
+msgstr "Ecom IP: %(ecomIp)s ポート: %(ecomPort)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1146
 msgid "Ecom server not found."
-msgstr ""
+msgstr "Ecom サーバーが見つかりません。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1153
-#, fuzzy
 msgid "Cannot connect to ECOM server"
-msgstr "キューに再接続しました。"
+msgstr "ECOM サーバーに接続できません"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1165
 #, python-format
 msgid "Found Replication Service: %s"
-msgstr ""
+msgstr "レプリカ生成サービスが見つかりました: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1178
 #, python-format
 msgid "Found Storage Configuration Service: %s"
-msgstr ""
+msgstr "ストレージ構成サービスが見つかりました: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1191
 #, python-format
 msgid "Found Controller Configuration Service: %s"
-msgstr ""
+msgstr "コントローラー構成サービスが見つかりました: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1204
 #, python-format
 msgid "Found Storage Hardware ID Management Service: %s"
-msgstr ""
+msgstr "ストレージ・ハードウェア ID 管理サービスが見つかりました: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1248
 #, python-format
 msgid "Pool %(storage_type)s is not found."
-msgstr ""
+msgstr "プール %(storage_type)s が見つかりません。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1254
 #, python-format
 msgid "Storage system not found for pool %(storage_type)s."
-msgstr ""
+msgstr "プール %(storage_type)s のストレージ・システムが見つかりません。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1260
 #, python-format
 msgid "Pool: %(pool)s  SystemName: %(systemname)s."
-msgstr ""
+msgstr "プール: %(pool)s システム名: %(systemname)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1277
 #, python-format
 msgid "Pool name: %(poolname)s  System name: %(systemname)s."
-msgstr ""
+msgstr "プール名: %(poolname)s システム名: %(systemname)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1292
 #, python-format
 msgid "Volume %(volumename)s not found on the array."
-msgstr ""
+msgstr "ボリューム %(volumename)s がアレイ上に見つかりません。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1295
-#, fuzzy, python-format
+#, python-format
 msgid "Volume name: %(volumename)s  Volume instance: %(vol_instance)s."
-msgstr "ボリューム %(volume_id)s をインスタンス %(instance_id)s のデバイス %(device)s に接続"
+msgstr "ボリューム名: %(volumename)s ボリューム・インスタンス: %(vol_instance)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1310
 #, python-format
 msgid "Source: %(volumename)s  Target: %(snapshotname)s."
-msgstr ""
+msgstr "ソース: %(volumename)s ターゲット: %(snapshotname)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1322
 #, python-format
 msgid ""
 "Source: %(volumename)s  Target: %(snapshotname)s. Storage Synchronized "
 "not found. "
-msgstr ""
+msgstr "ソース: %(volumename)s ターゲット: %(snapshotname)s。同期化されているストレージが見つかりません。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1327
 #, python-format
 msgid ""
 "Storage system: %(storage_system)s  Storage Synchronized instance: "
 "%(sync)s."
-msgstr ""
+msgstr "ストレージ・システム: %(storage_system)s ストレージ同期化インスタンス: %(sync)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1353
 #, python-format
 msgid "Error finding %s."
-msgstr ""
+msgstr "%s の検索中にエラーが発生しました。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1357
 #, python-format
 msgid "Found %(name)s: %(initiator)s."
-msgstr ""
+msgstr "%(name)s が見つかりました: %(initiator)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1417
 #, python-format
@@ -6484,6 +6653,8 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage system %(storage_system)s "
 "and initiator %(initiator)s is  %(ctrl)s."
 msgstr ""
+"ストレージ・システム %(storage_system)s およびイニシエーター %(initiator)s の "
+"LunMaskingSCSIProtocolController が %(ctrl)s です。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1458
 #, python-format
@@ -6491,13 +6662,15 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage volume %(vol)s and initiator"
 " %(initiator)s is  %(ctrl)s."
 msgstr ""
+"ストレージ・ボリューム %(vol)s およびイニシエーター %(initiator)s の "
+"LunMaskingSCSIProtocolController が %(ctrl)s です。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1472
 #, python-format
 msgid ""
 "Volume %(name)s not found on the array. Cannot determine if there are "
 "volumes mapped."
-msgstr ""
+msgstr "ボリューム %(name)s がアレイ上に見つかりません。マップされるボリュームがあるかどうかを判別できません。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1484
 #, python-format
@@ -6505,6 +6678,8 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage system %(storage)s and "
 "%(connector)s is %(ctrl)s."
 msgstr ""
+"ストレージ・システム %(storage)s および %(connector)s の "
+"LunMaskingSCSIProtocolController が %(ctrl)s です。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1496
 #, python-format
@@ -6512,11 +6687,13 @@ msgid ""
 "Found %(numVolumesMapped)d volumes on storage system %(storage)s mapped "
 "to %(initiator)s."
 msgstr ""
+"ストレージ・システム %(storage)s の %(numVolumesMapped)d ボリュームが %(initiator)s "
+"にマップされたことが検出されました。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1531
 #, python-format
 msgid "Available device number on %(storage)s: %(device)s."
-msgstr ""
+msgstr "%(storage)s で使用可能な装置番号: %(device)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1556
 #, python-format
@@ -6528,27 +6705,27 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_smis_common.py:1592
 #, python-format
 msgid "Device number not found for volume %(volumename)s %(vol_instance)s."
-msgstr ""
+msgstr "ボリューム %(volumename)s %(vol_instance)s の装置番号が見つかりません。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1597
 #, python-format
 msgid "Found device number %(device)d for volume %(volumename)s %(vol_instance)s."
-msgstr ""
+msgstr "ボリューム %(volumename)s %(vol_instance)s の装置番号 %(device)d が見つかりました。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1607
 #, python-format
 msgid "Device info: %(data)s."
-msgstr ""
+msgstr "デバイス情報: %(data)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1629
 #, python-format
 msgid "Masking view: %(view)s DeviceMaskingGroup: %(masking)s."
-msgstr ""
+msgstr "マスキング表示: %(view)s DeviceMaskingGroup: %(masking)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1651
 #, python-format
 msgid "Found Storage Processor System: %s"
-msgstr ""
+msgstr "ストレージ・プロセッサー・システムが見つかりました: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1679
 #, python-format
@@ -6556,52 +6733,54 @@ msgid ""
 "iSCSIProtocolEndpoint for storage system %(storage_system)s and SP %(sp)s"
 " is  %(endpoint)s."
 msgstr ""
+"ストレージ・システム %(storage_system)s および SP %(sp)s の iSCSIProtocolEndpoint は "
+"%(endpoint)s です。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1720
 msgid "Error finding Storage Hardware ID Service."
-msgstr ""
+msgstr "ストレージ・ハードウェア ID サービスの検索中にエラーが発生しました。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1726
 #, python-format
 msgid ""
 "EMCGetTargetEndpoints: Service: %(service)s  Storage HardwareIDs: "
 "%(hardwareids)s."
-msgstr ""
+msgstr "EMCGetTargetEndpoints: サービス: %(service)s ストレージ・ハードウェア ID: %(hardwareids)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1738
 msgid "Error finding Target WWNs."
-msgstr ""
+msgstr "ターゲット WWN の検索中にエラーが発生しました。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1748
 #, python-format
 msgid "Add target WWN: %s."
-msgstr ""
+msgstr "ターゲット WWN の追加: %s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1750
 #, python-format
 msgid "Target WWNs: %s."
-msgstr ""
+msgstr "ターゲット WWN: %s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1766
 #, python-format
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
-msgstr ""
+msgstr "%(wwpns)s のストレージ・ハードウェア ID は %(foundInstances)s です。"
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
-msgstr ""
+msgstr "ストレージ・システム %(storage)s 上の SP %(sp)s の iSCSI エンドポイントが見つかりません。"
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
-msgstr ""
+msgstr "iSCSI プロパティー: %s"
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:77
 msgid "Pool name is not specified."
@@ -6680,9 +6859,9 @@ msgid "Failed to list %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:251
-#, fuzzy, python-format
+#, python-format
 msgid "create_export: Volume: %(volume)s  Device ID: %(device_id)s"
-msgstr "ボリューム %(volume_id)s をインスタンス %(instance_id)s のデバイス %(device)s に接続"
+msgstr "create_export: ボリューム: %(volume)s デバイス ID: %(device_id)s"
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:292
 #, python-format
@@ -6882,93 +7061,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
-#, fuzzy, python-format
+#: cinder/volume/drivers/hds/hds.py:251
+#, python-format
 msgid "HDP not found: %s"
-msgstr "Sheepdog が動作していません: %s"
+msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7056,7 +7235,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7123,7 +7302,7 @@ msgstr ""
 #: cinder/volume/drivers/huawei/rest_common.py:327
 #, python-format
 msgid "create_snapshot:snapshot name:%(snapshot)s, volume name:%(volume)s."
-msgstr ""
+msgstr "create_snapshot: スナップショット名: %(snapshot)s、ボリューム名: %(volume)s。"
 
 #: cinder/volume/drivers/huawei/rest_common.py:354
 #, python-format
@@ -7166,7 +7345,7 @@ msgstr ""
 #: cinder/volume/drivers/huawei/rest_common.py:874
 #, python-format
 msgid "terminate_connection:volume name: %(volume)s, initiator name: %(ini)s."
-msgstr ""
+msgstr "terminate_connection: ボリューム名: %(volume)s、イニシエーター名: %(ini)s。"
 
 #: cinder/volume/drivers/huawei/rest_common.py:937
 #, python-format
@@ -7225,7 +7404,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7256,12 +7435,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7294,7 +7473,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7305,111 +7484,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7417,77 +7596,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7641,97 +7820,97 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
-msgstr ""
+msgstr "%s が設定されていません"
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:143
 msgid "enter: do_setup"
-msgstr ""
+msgstr "入力: do_setup"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:153
 #, python-format
@@ -7744,11 +7923,11 @@ msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:214
 msgid "leave: do_setup"
-msgstr ""
+msgstr "終了: do_setup"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:218
 msgid "enter: check_for_setup_error"
-msgstr ""
+msgstr "入力: check_for_setup_error"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:222
 msgid "Unable to determine system name"
@@ -7762,23 +7941,23 @@ msgstr ""
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
-msgstr ""
+msgstr "パスワードまたは SSH 秘密鍵が認証に必要: san_password または san_private_key オプションを設定してください"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:246
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
-msgstr ""
+msgstr "storwize_svc_flashcopy_timeout に指定した値 %d が正しくありません。有効値の範囲は 0 から 600 までです"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
 msgid "leave: check_for_setup_error"
-msgstr ""
+msgstr "終了: check_for_setup_error"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:264
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
-msgstr ""
+msgstr "ensure_export: ボリューム %s がストレージ上で見つかりませんでした"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:283
 msgid "The connector does not contain the required information."
@@ -7787,7 +7966,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:307
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "入力: initialize_connection: ボリューム %(vol)s とコネクター %(conn)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:338
 msgid "CHAP secret exists for host but CHAP is disabled"
@@ -7796,29 +7975,29 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:343
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
-msgstr ""
+msgstr "initialize_connection: ボリューム %s の属性の取得に失敗しました"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:355
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
-msgstr ""
+msgstr "予期したカラム名が lsvdisk: %s に見つかりませんでした"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:357
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
-msgstr ""
+msgstr "initialize_connection: ボリューム %s のボリューム属性が欠落しています"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:374
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
-msgstr ""
+msgstr "initialize_connection: ボリューム %(vol)s の入出力グループ %(gid)s でノードが見つかりませんでした"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
-msgstr ""
+msgstr "initialize_connection: ボリューム %s の優先ノードが見つかりませんでした"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:406
 msgid ""
@@ -7826,14 +8005,23 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
+"initialize_connection: ボリューム %(vol)s とコネクター %(conn)s "
+"のリターン・プロパティーを収集できませんでした。\n"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7841,101 +8029,110 @@ msgid ""
 " connector %(conn)s\n"
 " properties: %(prop)s"
 msgstr ""
+"終了: initialize_connection:\n"
+"ボリューム: %(vol)s\n"
+"コネクター %(conn)s\n"
+"プロパティー: %(prop)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "入力: terminate_connection: ボリューム %(vol)s とコネクター %(conn)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "終了: terminate_connection: ボリューム %(vol)s とコネクター %(conn)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
-msgstr ""
+msgstr "create_volume_from_snapshot: ソースと宛先のサイズが異なっています。"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
-msgstr ""
+msgstr "create_cloned_volume: ソースと宛先のサイズが異なっています。"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7943,31 +8140,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
-msgstr ""
+msgstr "ストレージからプール・データを取得できませんでした"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8069,27 +8273,27 @@ msgstr ""
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
-msgstr ""
+msgstr "storwize_svc_vol_rsize に指定した値が正しくありません。パーセンテージ (0-100) または -1 に設定してください"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:388
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
-msgstr ""
+msgstr "storwize_svc_vol_warning に指定した値が正しくありません。パーセンテージ (0-100) に設定してください"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:395
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
-msgstr ""
+msgstr "storwize_svc_vol_grainsize に指定した値が正しくありません。32、64、128、または 256 に設定してください"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
 msgid "System does not support compression"
-msgstr ""
+msgstr "システムは圧縮をサポートしません"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:407
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
-msgstr ""
+msgstr "圧縮が True に設定されている場合は、rsize (-1 に等しくないもの) も設定する必要があります"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:413
 #, python-format
@@ -8097,6 +8301,8 @@ msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
+"storwize_svc_connection_protocol に指定した値 %(prot)s が正しくありません。有効値は "
+"%(enabled)s です"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:422
 #, python-format
@@ -8115,7 +8321,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:504
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
-msgstr ""
+msgstr "終了: _create_vdisk: ボリューム %s "
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:531
 #, python-format
@@ -8151,7 +8357,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:601
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
-msgstr ""
+msgstr "vdisk %(name)s は %(src)s から %(tgt)s へのマッピングに関係していません"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:637
 #, python-format
@@ -8188,15 +8394,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8208,18 +8421,17 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:213
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:250
-#, fuzzy, python-format
+#, python-format
 msgid ""
 "CLI Exception output:\n"
 " command: %(cmd)s\n"
 " stdout: %(out)s\n"
 " stderr: %(err)s"
 msgstr ""
-"%(description)s\n"
+"CLI 例外出力:\n"
 "コマンド: %(cmd)s\n"
-"終了コード: %(exit_code)s\n"
-"標準出力: %(stdout)r\n"
-"標準エラー出力: %(stderr)r"
+" stdout: %(out)s\n"
+" stderr: %(err)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:53
 #, python-format
@@ -8251,12 +8463,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -8327,36 +8539,36 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:69
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
-msgstr ""
+msgstr "LUN %(name)s に対して定義されたメタデータ・プロパティー %(prop)s がありません"
 
 #: cinder/volume/drivers/netapp/iscsi.py:105
-#, fuzzy, python-format
+#, python-format
 msgid "Using NetApp filer: %s"
-msgstr "インスタンス %s は実行中です。"
+msgstr "NetApp ファイラーの使用中: %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:150
 msgid "Success getting LUN list from server"
-msgstr ""
+msgstr "サーバーから LUN リストを正常に取得できました"
 
 #: cinder/volume/drivers/netapp/iscsi.py:166
 #, python-format
 msgid "Created LUN with name %s"
-msgstr ""
+msgstr "名前 %s の LUN が作成されました"
 
 #: cinder/volume/drivers/netapp/iscsi.py:175
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
-msgstr ""
+msgstr "ボリューム/スナップショット %(name)s の LUN テーブルに項目がありません。"
 
 #: cinder/volume/drivers/netapp/iscsi.py:191
-#, fuzzy, python-format
+#, python-format
 msgid "Destroyed LUN %s"
-msgstr "ネストした戻り値: %s"
+msgstr "LUN %s が破棄されました"
 
 #: cinder/volume/drivers/netapp/iscsi.py:227
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
-msgstr ""
+msgstr "LUN %(name)s がイニシエーター %(initiator_name)s にマップされました"
 
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
@@ -8366,24 +8578,24 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:238
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get LUN target details for the LUN %s"
-msgstr "ip %s に対するメタデータの取得に失敗しました。"
+msgstr "LUN %s の LUN ターゲット詳細の取得に失敗しました"
 
 #: cinder/volume/drivers/netapp/iscsi.py:249
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get target portal for the LUN %s"
-msgstr "ip %s に対するメタデータの取得に失敗しました。"
+msgstr "LUN %s のターゲット・ポータルの取得に失敗しました"
 
 #: cinder/volume/drivers/netapp/iscsi.py:252
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get target IQN for the LUN %s"
-msgstr "ip %s に対するメタデータの取得に失敗しました。"
+msgstr "LUN %s のターゲット IQN の取得に失敗しました"
 
 #: cinder/volume/drivers/netapp/iscsi.py:290
-#, fuzzy, python-format
+#, python-format
 msgid "Snapshot %s deletion successful"
-msgstr "ボリューム %s の削除に成功しました。"
+msgstr "スナップショット %s の削除が正常に行われました"
 
 #: cinder/volume/drivers/netapp/iscsi.py:310
 #: cinder/volume/drivers/netapp/iscsi.py:557
@@ -8396,21 +8608,21 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:325
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
-msgstr ""
+msgstr "LUN %(name)s がイニシエーター %(initiator_name)s からマップ解除されました"
 
 #: cinder/volume/drivers/netapp/iscsi.py:414
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
-msgstr ""
+msgstr "lun のマッピング・エラー。コード : %(code)s、メッセージ: %(message)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:433
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
-msgstr ""
+msgstr "lun のマップ解除エラー。コード : %(code)s、メッセージ: %(message)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:503
 msgid "Object is not a NetApp LUN."
-msgstr ""
+msgstr "オブジェクトは NetApp LUN ではありません。"
 
 #: cinder/volume/drivers/netapp/iscsi.py:535
 #, python-format
@@ -8509,12 +8721,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:841
 #, python-format
 msgid "No iscsi service found for vserver %s"
-msgstr ""
+msgstr "vserver %s 用の iSCSI サービスが見つかりませんでした"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1008
 #, python-format
 msgid "Cloned LUN with new name %s"
-msgstr ""
+msgstr "新規名 %s の LUN が複製されました"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1012
 #, python-format
@@ -8537,9 +8749,9 @@ msgid "Api version could not be determined."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:1190
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get vol with required size for volume: %s"
-msgstr "ip %s に対するメタデータの取得に失敗しました。"
+msgstr "ボリュームに必要なサイズの vol の取得に失敗しました: %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1299
 #, python-format
@@ -8549,12 +8761,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:1443
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
-msgstr ""
+msgstr "src %(name)s および dest %(new_name)s を使用した複製操作が完了しました"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1446
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
-msgstr ""
+msgstr "src %(name)s および dest %(new_name)s を使用した複製操作が失敗しました"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1509
 msgid "Volume refresh job already running. Returning..."
@@ -8693,7 +8905,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:460
 #, python-format
 msgid "Converted to raw, but format is now %s"
-msgstr ""
+msgstr "ローに変換されましたが、現在の形式は %s です"
 
 #: cinder/volume/drivers/netapp/nfs.py:470
 #, python-format
@@ -8771,7 +8983,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:866
 #, python-format
 msgid "No interface found on cluster for ip %s"
-msgstr ""
+msgstr "ip %s のクラスター上にインターフェースが見つかりませんでした"
 
 #: cinder/volume/drivers/netapp/nfs.py:907
 #, python-format
@@ -8916,12 +9128,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:1349
 #, python-format
 msgid "No storage path found for export path %s"
-msgstr ""
+msgstr "エクスポート・パス %s 用のストレージ・パスが見つかりません"
 
 #: cinder/volume/drivers/netapp/nfs.py:1359
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
-msgstr ""
+msgstr "src %(src_path)s、dest %(dest_path)s を指定した複製"
 
 #: cinder/volume/drivers/netapp/ssc_utils.py:241
 #, python-format
@@ -9288,9 +9500,9 @@ msgid "Error deleting vol with label %s."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:105
-#, fuzzy, python-format
+#, python-format
 msgid "Volume %s does not exist in Nexenta SA"
-msgstr "ボリュームグループ%sが存在しません。"
+msgstr "ボリューム %s は Nexenta SA に存在しません"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:151
 #, python-format
@@ -9366,10 +9578,10 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
-msgstr ""
+msgstr "エクスポート確認中のターゲット作成エラー \"%s\" を無視しました"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:486
 #, python-format
@@ -9397,36 +9609,38 @@ msgid ""
 "Got error trying to destroy target group %(target_group)s, assuming it is"
 " already gone: %(exc)s"
 msgstr ""
+"ターゲット・グループ %(target_group)s "
+"を破棄しようとしてエラーが発生しました。ターゲット・グループは既に存在していないと思われます: %(exc)s"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:559
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
 "gone: %(exc)s"
-msgstr ""
+msgstr "ターゲット %(target)s を削除しようとしてエラーが発生しました。ターゲットは既に存在していないと思われます: %(exc)s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:83
 #, python-format
 msgid "Sending JSON data: %s"
-msgstr ""
+msgstr "JSON データの送信中: %s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:88
 msgid "No headers in server response"
-msgstr ""
+msgstr "サーバーの応答にヘッダーがありません"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:89
 msgid "Bad response from server"
-msgstr ""
+msgstr "サーバーからの正しくない応答"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:90
 #, python-format
 msgid "Auto switching to HTTPS connection to %s"
-msgstr ""
+msgstr "%s への HTTPS 接続に自動切り替え中"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:96
-#, fuzzy, python-format
+#, python-format
 msgid "Got response: %s"
-msgstr "応答 %s"
+msgstr "応答を受け取りました: %s"
 
 #: cinder/volume/drivers/nexenta/nfs.py:85
 #, python-format
@@ -9489,290 +9703,294 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
-msgstr ""
+msgstr "san_password または san_private_key を指定してください"
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
-msgstr ""
+msgstr "san_ip を設定する必要があります"
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
-msgstr ""
+msgstr "list-view 出力を解析できません: %s"
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
-msgstr ""
+msgstr "%(zfs_poolname)s の LUID が見つかりません。Output=%(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
-msgstr ""
+msgstr "CPG (%s) がアレイ上に存在しません"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
-msgstr ""
+msgstr "有効な個人 %(valid)s を指定する必要があります。値 '%(persona)s' は無効です。"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
-msgstr ""
+msgstr "有効なプロビジョニング・タイプ %(valid)s を指定する必要があります。値 '%(prov)s' は無効です。"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:763
-#, fuzzy, python-format
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
+#, python-format
 msgid "Volume (%s) already exists on array"
-msgstr "グループ %s は既に存在しています。"
+msgstr "ボリューム (%s) はすでにアレイ上に存在します"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
-msgstr ""
+msgstr "CLIQ コマンドが %s を返しました"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, python-format
 msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
+msgstr "CLIQ コマンド %(verb)s %(cliq_args)s に対する、誤った形式の応答です。Result=%(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, python-format
 msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
+msgstr "CLIQ コマンド %(verb)s %(cliq_args)s の実行中にエラーが発生しました。Result=%(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, python-format
 msgid ""
 "Unexpected number of virtual ips for cluster  %(cluster_name)s. "
 "Result=%(_xml)s"
-msgstr ""
+msgstr "クラスター %(cluster_name)s に、予期しない数の仮想 IP があります。Result=%(_xml)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
+msgstr "ボリューム情報: %(volume_name)s => %(volume_attributes)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
-msgstr ""
+msgstr "local_path はサポートされていません"
 
 #: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:75
 #, python-format
@@ -10164,7 +10382,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10324,7 +10542,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10444,62 +10662,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10725,7 +10943,7 @@ msgstr ""
 
 #: cinder/volume/drivers/vmware/volumeops.py:744
 msgid "Copying disk data before snapshot of the VM"
-msgstr ""
+msgstr "VM のスナップショット作成前にディスク・データをコピーしています"
 
 #: cinder/volume/drivers/vmware/volumeops.py:754
 #, python-format
@@ -10782,9 +11000,9 @@ msgid "Filtered hubs: %s"
 msgstr ""
 
 #: cinder/volume/drivers/windows/windows.py:102
-#, fuzzy, python-format
+#, python-format
 msgid "Creating folder %s "
-msgstr "Deleting user: ユーザ %s を削除します。"
+msgstr "フォルダー %s の作成中 "
 
 #: cinder/volume/drivers/windows/windows_utils.py:47
 #, python-format
@@ -10811,7 +11029,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10819,35 +11037,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10855,42 +11078,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/ka_GE/LC_MESSAGES/cinder.po b/cinder/locale/ka_GE/LC_MESSAGES/cinder.po
index 2a81f4bfe..249c2d532 100644
--- a/cinder/locale/ka_GE/LC_MESSAGES/cinder.po
+++ b/cinder/locale/ka_GE/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Georgian (Georgia) translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-05-29 08:13+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Georgian (Georgia) "
-"(http://www.transifex.com/projects/p/openstack/language/ka_GE/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/ka_GE/)\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -58,7 +58,7 @@ msgstr ""
 
 #: cinder/exception.py:124
 msgid "Not authorized."
-msgstr ""
+msgstr "არ არის ავტორიზებული."
 
 #: cinder/exception.py:129
 msgid "User does not have admin privileges"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1567,7 +1579,7 @@ msgstr ""
 #: cinder/api/v2/volume_metadata.py:52 cinder/api/v2/volume_metadata.py:70
 #: cinder/api/v2/volume_metadata.py:95 cinder/api/v2/volume_metadata.py:120
 msgid "Malformed request body"
-msgstr ""
+msgstr "არასწორი მოთხოვნის ნაწილი"
 
 #: cinder/api/openstack/wsgi.py:921
 msgid "Unsupported Content-Type"
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:463
+#, python-format
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:474
+#, python-format
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:492
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Pipe1 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:506
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Pipe2 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/km/LC_MESSAGES/cinder.po b/cinder/locale/km/LC_MESSAGES/cinder.po
index d9bf1ce32..8d3b89326 100644
--- a/cinder/locale/km/LC_MESSAGES/cinder.po
+++ b/cinder/locale/km/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Khmer translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-11-26 20:45+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Khmer "
-"(http://www.transifex.com/projects/p/openstack/language/km/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/km/)\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/kn/LC_MESSAGES/cinder.po b/cinder/locale/kn/LC_MESSAGES/cinder.po
index 5038707fc..67eb5e3a8 100644
--- a/cinder/locale/kn/LC_MESSAGES/cinder.po
+++ b/cinder/locale/kn/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Kannada translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-09-17 14:44+0000\n"
-"Last-Translator: Tom Fifield <tom@openstack.org>\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Kannada "
-"(http://www.transifex.com/projects/p/openstack/language/kn/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/kn/)\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/ko/LC_MESSAGES/cinder.po b/cinder/locale/ko/LC_MESSAGES/cinder.po
index 92d8a2a36..b4b7978a9 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-03-29 06:10+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+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"
@@ -736,34 +736,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -782,17 +782,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -801,39 +801,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1326,26 +1326,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1451,7 +1463,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1708,43 +1720,43 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr "볼륨의 상태를 알 수 없습니다"
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 #, fuzzy
 msgid "Volume to be backed up must be available"
 msgstr "볼륨의 상태를 알 수 없습니다"
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 #, fuzzy
 msgid "Backup status must be available"
 msgstr "볼륨의 상태를 알 수 없습니다"
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 #, fuzzy
 msgid "Volume to be restored to must be available"
 msgstr "볼륨의 상태를 알 수 없습니다"
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2026,7 +2038,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2091,7 +2103,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2102,237 +2114,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2866,7 +2937,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "%s 볼륨을 찾을수 없습니다"
@@ -2888,45 +2959,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "%s 볼륨을 찾을수 없습니다"
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, fuzzy, python-format
 msgid "Removing iscsi_target: %s"
 msgstr "인스턴스 %s를 재부팅합니다"
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3051,11 +3126,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3069,7 +3144,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3083,50 +3158,50 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 #, fuzzy
 msgid "Volume must be available"
 msgstr "볼륨의 상태를 알 수 없습니다"
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3177,11 +3252,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3410,22 +3485,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3436,7 +3511,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3763,12 +3838,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3839,7 +3914,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3873,7 +3948,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3905,7 +3980,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3914,12 +3989,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3927,7 +4002,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3945,7 +4020,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4208,66 +4283,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4301,20 +4376,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4329,18 +4404,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4363,7 +4438,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4383,7 +4458,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr "%s 볼륨을 찾을수 없습니다"
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4392,13 +4467,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4406,10 +4481,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4448,285 +4530,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4781,14 +4857,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4914,7 +4990,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, fuzzy, python-format
 msgid "Error running SSH command: %s"
@@ -4994,219 +5070,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5315,175 +5391,175 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 #, fuzzy
 msgid "Not an rbd snapshot"
 msgstr "인스턴스 %s: 스냅샷 저장중"
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, fuzzy, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr "%s 볼륨을 찾을수 없습니다"
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5650,8 +5726,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5684,12 +5760,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5760,19 +5836,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, fuzzy, python-format
 msgid "Cannot find device number for volume %s"
 msgstr "%s 볼륨을 찾을수 없습니다"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6578,18 +6654,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6873,93 +6949,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7047,7 +7123,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7216,7 +7292,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7247,12 +7323,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7285,7 +7361,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7296,111 +7372,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7408,77 +7484,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7632,90 +7708,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7817,14 +7893,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7833,100 +7916,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7934,31 +8022,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8179,15 +8274,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8242,12 +8344,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9357,7 +9459,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9480,288 +9582,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10155,7 +10261,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10315,7 +10421,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10435,62 +10541,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10802,7 +10908,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10810,35 +10916,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10846,42 +10957,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/ko_KR/LC_MESSAGES/cinder.po b/cinder/locale/ko_KR/LC_MESSAGES/cinder.po
index 8660d2d2d..5f01065a4 100644
--- a/cinder/locale/ko_KR/LC_MESSAGES/cinder.po
+++ b/cinder/locale/ko_KR/LC_MESSAGES/cinder.po
@@ -1,17 +1,20 @@
 # Korean (South Korea) translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
+# bluejay.kr <bluejay.ahn@gmail.com>, 2013
+# Nalee Jang <nalee999@nate.com>, 2013
+# ujuc Gang <potopro@gmail.com>, 2013
 msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-05-08 11:44+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Korean (Korea) "
-"(http://www.transifex.com/projects/p/openstack/language/ko_KR/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/ko_KR/)\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -21,25 +24,25 @@ msgstr ""
 #: cinder/context.py:63
 #, python-format
 msgid "Arguments dropped when creating context: %s"
-msgstr ""
+msgstr "컨텍스트 작성 시 삭제된 인수: %s"
 
 #: cinder/context.py:107
 #, python-format
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
-msgstr ""
+msgstr "read_deleted는 'no', 'yes', 'only' 중에서 선택 가능하며, %r은(는) 불가능함"
 
 #: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
-msgstr ""
+msgstr "알 수 없는 예외가 발생했습니다. "
 
 #: cinder/exception.py:88
 msgid "Exception in string format operation"
-msgstr ""
+msgstr "문자열 형식화 오퍼레이션의 예외"
 
 #: cinder/exception.py:107
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
-msgstr ""
+msgstr "스토리지 볼륨 백엔드 API로부터 잘못되었거나 예상치 못한 응답: %(data)s"
 
 #: cinder/exception.py:112
 #, python-format
@@ -58,21 +61,21 @@ msgstr ""
 
 #: cinder/exception.py:124
 msgid "Not authorized."
-msgstr ""
+msgstr "권한이 없습니다. "
 
 #: cinder/exception.py:129
 msgid "User does not have admin privileges"
-msgstr ""
+msgstr "사용자에게 관리자 권한이 없음"
 
 #: cinder/exception.py:133
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
-msgstr ""
+msgstr "정책이 %(action)s이(가) 수행되도록 허용하지 않습니다. "
 
 #: cinder/exception.py:137
 #, python-format
 msgid "Not authorized for image %(image_id)s."
-msgstr ""
+msgstr "%(image_id)s 이미지에 대한 권한이 없습니다. "
 
 #: cinder/exception.py:141
 msgid "Volume driver not ready."
@@ -80,7 +83,7 @@ msgstr ""
 
 #: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
-msgstr ""
+msgstr "허용할 수 없는 매개변수입니다. "
 
 #: cinder/exception.py:150
 #, python-format
@@ -95,15 +98,15 @@ msgstr ""
 #: cinder/exception.py:159
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
-msgstr ""
+msgstr "%(volume_id)s 볼륨이 여전히 첨부되어 있습니다. 먼저 불륨을 분리하십시오. "
 
 #: cinder/exception.py:163
 msgid "Failed to load data into json format"
-msgstr ""
+msgstr "로드를 json 형식으로 로드하지 못했음"
 
 #: cinder/exception.py:167
 msgid "The results are invalid."
-msgstr ""
+msgstr "결과가 올바르지 않습니다. "
 
 #: cinder/exception.py:171
 #, python-format
@@ -123,7 +126,7 @@ msgstr ""
 #: cinder/exception.py:183
 #, python-format
 msgid "Invalid content type %(content_type)s."
-msgstr ""
+msgstr "올바르지 않은 컨텐츠 유형 %(content_type)s."
 
 #: cinder/exception.py:187
 #, python-format
@@ -133,7 +136,7 @@ msgstr ""
 #: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
-msgstr ""
+msgstr "%(err)s"
 
 #: cinder/exception.py:197
 #, python-format
@@ -147,12 +150,12 @@ msgstr ""
 
 #: cinder/exception.py:206
 msgid "Service is unavailable at this time."
-msgstr ""
+msgstr "서비스가 지금 사용 불가능합니다. "
 
 #: cinder/exception.py:210
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
-msgstr ""
+msgstr "%(image_id)s 이미지는 허용할 수 없음: %(reason)s"
 
 #: cinder/exception.py:214
 #, python-format
@@ -162,21 +165,21 @@ msgstr ""
 #: cinder/exception.py:218
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
-msgstr ""
+msgstr "uuid를 예상했지만 %(uuid)s을(를) 수신했습니다. "
 
 #: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
-msgstr ""
+msgstr "자원을 찾을 수 없습니다. "
 
 #: cinder/exception.py:228
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
-msgstr ""
+msgstr "%(volume_id)s 볼륨을 찾을 수 없습니다. "
 
 #: cinder/exception.py:232
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
-msgstr ""
+msgstr "%(volume_id)s 볼륨에 %(metadata_key)s 키를 갖는 메타데이터가 없습니다. "
 
 #: cinder/exception.py:237
 #, python-format
@@ -198,24 +201,24 @@ msgstr ""
 #: cinder/exception.py:250
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
-msgstr ""
+msgstr "%(snapshot_id)s 스냅샷에 %(metadata_key)s 키를 갖는 메타데이터가 없습니다. "
 
 #: cinder/exception.py:255
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
-msgstr ""
+msgstr "%(volume_type_id)s 볼륨 유형을 찾을 수 없습니다. "
 
 #: cinder/exception.py:259
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
-msgstr ""
+msgstr "이름이 %(volume_type_name)s인 볼륨 유형을 찾을 수 없습니다. "
 
 #: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
-msgstr ""
+msgstr "%(volume_type_id)s 볼륨 유형에 %(extra_specs_key)s 키를 갖는 추가 스펙이 없습니다. "
 
 #: cinder/exception.py:269
 #, python-format
@@ -227,113 +230,113 @@ msgstr ""
 #: cinder/exception.py:274
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
-msgstr ""
+msgstr "%(snapshot_id)s 스냅샷을 찾을 수 없습니다. "
 
 #: cinder/exception.py:278
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
-msgstr ""
+msgstr "스냅샷을 갖는 %(volume_name)s 볼륨 삭제 중"
 
 #: cinder/exception.py:282
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
-msgstr ""
+msgstr "종속 볼륨을 갖는 %(snapshot_name)s 스냅샷 삭제 중"
 
 #: cinder/exception.py:287
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
-msgstr ""
+msgstr "%(volume_id)s 볼륨에 대한 대상ID가 없습니다. "
 
 #: cinder/exception.py:291
 #, python-format
 msgid "Invalid image href %(image_href)s."
-msgstr ""
+msgstr "올바르지 않은 이미지 href %(image_href)s."
 
 #: cinder/exception.py:295
 #, python-format
 msgid "Image %(image_id)s could not be found."
-msgstr ""
+msgstr "%(image_id)s 이미지를 찾을 수 없습니다. "
 
 #: cinder/exception.py:299
 #, python-format
 msgid "Service %(service_id)s could not be found."
-msgstr ""
+msgstr "%(service_id)s 서비스를 찾을 수 없습니다. "
 
 #: cinder/exception.py:303
 #, python-format
 msgid "Host %(host)s could not be found."
-msgstr ""
+msgstr "%(host)s 호스트를 찾을 수 없습니다. "
 
 #: cinder/exception.py:307
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
-msgstr ""
+msgstr "스케줄러 호스트 필터 %(filter_name)s을(를) 찾을 수 없습니다. "
 
 #: cinder/exception.py:311
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
-msgstr ""
+msgstr "Scheduler Host Weigher %(weigher_name)s을(를) 찾을 수 없습니다. "
 
 #: cinder/exception.py:315
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
-msgstr ""
+msgstr "%(host)s 호스트에서 2진 %(binary)s을(를) 찾을 수 없습니다. "
 
 #: cinder/exception.py:319
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
-msgstr ""
+msgstr "올바르지 않은 예약 만기 %(expire)s."
 
 #: cinder/exception.py:323
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
-msgstr ""
+msgstr "이 변경으로 인해 %(unders)s 자원의 사용량이 0보다 적게 됩니다. "
 
 #: cinder/exception.py:328
 msgid "Quota could not be found"
-msgstr ""
+msgstr "할당량을 찾을 수 없음"
 
 #: cinder/exception.py:332
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
-msgstr ""
+msgstr "알 수 없는 할당량 자원 %(unknown)s."
 
 #: cinder/exception.py:336
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
-msgstr ""
+msgstr "%(project_id)s 프로젝트에 대한 할당량을 찾을 수 없습니다. "
 
 #: cinder/exception.py:340
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
-msgstr ""
+msgstr "%(class_name)s 할당량 클래스를 찾을 수 없습니다. "
 
 #: cinder/exception.py:344
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
-msgstr ""
+msgstr "%(project_id)s 프로젝트에 대한 할당 사용량을 찾을 수 없습니다. "
 
 #: cinder/exception.py:348
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
-msgstr ""
+msgstr "할당 예약 %(uuid)s을(를) 찾을 수 없습니다. "
 
 #: cinder/exception.py:352
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
-msgstr ""
+msgstr "자원에 대한 할당량 초과: %(overs)s"
 
 #: cinder/exception.py:356
 #, python-format
 msgid "File %(file_path)s could not be found."
-msgstr ""
+msgstr "%(file_path)s 파일을 찾을 수 없습니다. "
 
 #: cinder/exception.py:365
 #, python-format
 msgid "Volume Type %(id)s already exists."
-msgstr ""
+msgstr "%(id)s 볼륨 유형이 이미 존재합니다. "
 
 #: cinder/exception.py:369
 #, python-format
@@ -348,12 +351,12 @@ msgstr ""
 #: cinder/exception.py:377
 #, python-format
 msgid "Malformed message body: %(reason)s"
-msgstr ""
+msgstr "잘못된 메시지 본문: %(reason)s"
 
 #: cinder/exception.py:381
 #, python-format
 msgid "Could not find config at %(path)s"
-msgstr ""
+msgstr "%(path)s에서 구성을 찾을 수 없음"
 
 #: cinder/exception.py:385
 #, python-format
@@ -363,12 +366,12 @@ msgstr ""
 #: cinder/exception.py:389
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
-msgstr ""
+msgstr "%(path)s에서 페이스트 앱 '%(name)s'을(를) 로드할 수 없음"
 
 #: cinder/exception.py:393
 #, python-format
 msgid "No valid host was found. %(reason)s"
-msgstr ""
+msgstr "유효한 호스트가 없습니다. %(reason)s"
 
 #: cinder/exception.py:402
 #, python-format
@@ -385,44 +388,44 @@ msgstr ""
 #: cinder/exception.py:415
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
-msgstr ""
+msgstr "허용된 최대 볼륨 수(%(allowed)d)를 초과함"
 
 #: cinder/exception.py:419
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
-msgstr ""
+msgstr "허용된 최대 스냅샷 수 (%(allowed)d)을(를) 초과함"
 
 #: cinder/exception.py:423
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
-msgstr ""
+msgstr "이름이 %(vol_name)s인 둘 이상의 볼륨을 발견했음"
 
 #: cinder/exception.py:427
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
-msgstr ""
+msgstr "이름이 %(name)s이고 스펙이 %(extra_specs)s인 volume_type을 작성할 수 없음"
 
 #: cinder/exception.py:432
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
-msgstr ""
+msgstr "알 수 없거나 지원되지 않는 명령 %(cmd)s"
 
 #: cinder/exception.py:436
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
-msgstr ""
+msgstr "%(cmd)s 명령에 대해 양식이 잘못된 응답: %(reason)s"
 
 #: cinder/exception.py:440
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
-msgstr ""
+msgstr "조작이 상태=%(status)s과(와) 함께 실패했습니다. 전체 덤프: %(data)s"
 
 #: cinder/exception.py:444
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
-msgstr ""
+msgstr "글랜스 메타데이터를 업데이트할 수 없음. 볼륨 ID %(volume_id)s에 대해 %(key)s 키가 있음"
 
 #: cinder/exception.py:449
 #, python-format
@@ -477,7 +480,7 @@ msgstr ""
 #: cinder/exception.py:493
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
-msgstr ""
+msgstr "%(backup_id)s 백업을 찾을 수 없습니다. "
 
 #: cinder/exception.py:497
 msgid "Failed to identify volume backend."
@@ -486,7 +489,7 @@ msgstr ""
 #: cinder/exception.py:501
 #, python-format
 msgid "Invalid backup: %(reason)s"
-msgstr ""
+msgstr "올바르지 않은 백업: %(reason)s"
 
 #: cinder/exception.py:505
 #, python-format
@@ -608,35 +611,35 @@ msgstr ""
 #: cinder/exception.py:611
 #, python-format
 msgid "Unable to create server object for initiator %(name)s"
-msgstr ""
+msgstr "개시자 %(name)s에 대한 서버 오브젝트를 작성할 수 없음"
 
 #: cinder/exception.py:615
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
-msgstr ""
+msgstr "개시자 %(name)s에 대한 서버 오브젝트를 찾을 수 없음"
 
 #: cinder/exception.py:619
 msgid "Unable to find any active VPSA controller"
-msgstr ""
+msgstr "활성 VPSA 제어기를 찾을 수 없음"
 
 #: cinder/exception.py:623
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
-msgstr ""
+msgstr "%(name)s 볼륨에 대한 첨부를 찾지 못했음"
 
 #: cinder/exception.py:627
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
-msgstr ""
+msgstr "%(name)s 볼륨에 대한 올바르지 않은 첨부 정보: %(reason)s"
 
 #: cinder/exception.py:631
 #, python-format
 msgid "Bad HTTP response status %(status)s"
-msgstr ""
+msgstr "잘못된 HTTP 응답 상태 %(status)s"
 
 #: cinder/exception.py:636
 msgid "Bad response from SolidFire API"
-msgstr ""
+msgstr "SolidFire API의 잘못된 응답"
 
 #: cinder/exception.py:640
 msgid "SolidFire Cinder Driver exception"
@@ -645,38 +648,38 @@ msgstr ""
 #: cinder/exception.py:644
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
-msgstr ""
+msgstr "SolidFire API 응답의 오류: 데이터=%(data)s"
 
 #: cinder/exception.py:648
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
-msgstr ""
+msgstr "Solidfire 디바이스에서 %(account_name)s 계정을 찾을 수 없음"
 
 #: cinder/exception.py:654
 #, python-format
 msgid "Invalid 3PAR Domain: %(err)s"
-msgstr ""
+msgstr "3PAR 도메인이 잘못되었습니다: %(err)s"
 
 #: cinder/exception.py:659
 msgid "Unknown NFS exception"
-msgstr ""
+msgstr "알 수 없는 NFS 예외"
 
 #: cinder/exception.py:663
 msgid "No mounted NFS shares found"
-msgstr ""
+msgstr "마운트된 NFS 공유를 찾지 못함"
 
 #: cinder/exception.py:667 cinder/exception.py:680
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
-msgstr ""
+msgstr "%(volume_size)sG를 보유할 수 있는 공유가 없음"
 
 #: cinder/exception.py:672
 msgid "Unknown Gluster exception"
-msgstr ""
+msgstr "알 수 없는 Gluster 예외"
 
 #: cinder/exception.py:676
 msgid "No mounted Gluster shares found"
-msgstr ""
+msgstr "마운트된 Gluster 공유를 찾지 못함"
 
 #: cinder/exception.py:684
 #, python-format
@@ -727,44 +730,44 @@ msgstr ""
 
 #: cinder/manager.py:128
 msgid "Notifying Schedulers of capabilities ..."
-msgstr ""
+msgstr "스케줄러에 기능 알림 ..."
 
 #: cinder/policy.py:30
 msgid "JSON file representing policy"
-msgstr ""
+msgstr "정책을 나타내는 JSON 파일"
 
 #: cinder/policy.py:33
 msgid "Rule checked when requested rule is not found"
-msgstr ""
+msgstr "요청된 규칙을 찾을 수 없을 때 규칙이 검사됨"
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +786,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
-msgstr ""
+msgstr "%(topic)s 노드(버전 %(version_string)s) 시작 중"
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +805,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
-msgstr ""
+msgstr "데이터베이스 항목이 없는 서비스 강제 종료"
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
-msgstr ""
+msgstr "서비스 데이터베이스 오브젝트가 사라졌습니다. 다시 작성 중입니다. "
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
-msgstr ""
+msgstr "모델 서버 연결을 복구했습니다!"
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
-msgstr ""
+msgstr "모델 서버가 사라졌음"
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
-msgstr ""
+msgstr "serve()는 한 번만 호출할 수 있음"
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
-msgstr ""
+msgstr "CONF의 전체 세트:"
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -851,27 +854,27 @@ msgstr ""
 
 #: cinder/utils.py:213
 msgid "Specify a password or private_key"
-msgstr ""
+msgstr "비밀번호 또는 private_key 지정"
 
 #: cinder/utils.py:229
 #, python-format
 msgid "Error connecting via ssh: %s"
-msgstr ""
+msgstr "ssh를 통해 연결하는 중 오류 발생: %s"
 
 #: cinder/utils.py:413
 #, python-format
 msgid "Invalid backend: %s"
-msgstr ""
+msgstr "올바르지 않은 백엔드: %s"
 
 #: cinder/utils.py:424
 #, python-format
 msgid "backend %s"
-msgstr ""
+msgstr "백엔드 %s"
 
 #: cinder/utils.py:699
 #, python-format
 msgid "Could not remove tmpdir: %s"
-msgstr ""
+msgstr "tmpdir을 제거할 수 없음: %s"
 
 #: cinder/utils.py:760
 #, python-format
@@ -881,7 +884,7 @@ msgstr ""
 #: cinder/utils.py:782
 #, python-format
 msgid "%s is not a string or unicode"
-msgstr ""
+msgstr "%s이(가) 문자열 또는 Unicode가 아님"
 
 #: cinder/utils.py:786
 #, python-format
@@ -891,33 +894,33 @@ msgstr ""
 #: cinder/utils.py:791
 #, python-format
 msgid "%(name)s has more than %(max_length)s characters."
-msgstr ""
+msgstr "%(name)s의 문자 수가 %(max_length)s문자를 초과합니다."
 
 #: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
-msgstr ""
+msgstr "cert_file을 찾을 수 없음: %s"
 
 #: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
-msgstr ""
+msgstr "ca_file을 찾을 수 없음: %s"
 
 #: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
-msgstr ""
+msgstr "key_file을 찾을 수 없음: %s"
 
 #: 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 ""
+msgstr "SSL 모드로 서버를 실행하는 경우 구성 파일에서 cert_file 및 key_file 옵션 값 둘 다를 지정해야 합니다. "
 
 #: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
-msgstr ""
+msgstr "30초 동안 시도한 후 %(host)s:%(port)s에 바인드할 수 없음"
 
 #: cinder/wsgi.py:215
 #, python-format
@@ -926,15 +929,15 @@ msgstr ""
 
 #: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
-msgstr ""
+msgstr "WSGI 서버를 중지 중입니다. "
 
 #: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
-msgstr ""
+msgstr "WSGI 서버가 중지되었습니다. "
 
 #: cinder/wsgi.py:322
 msgid "You must implement __call__"
-msgstr ""
+msgstr "__call__을 구현해야 합니다. "
 
 #: cinder/api/auth.py:26
 msgid ""
@@ -950,105 +953,105 @@ msgstr ""
 
 #: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:282
 msgid "limit param must be an integer"
-msgstr ""
+msgstr "limit 매개변수는 정수여야 함"
 
 #: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:279
 msgid "limit param must be positive"
-msgstr ""
+msgstr "limit 매개변수가 양수여야 함"
 
 #: cinder/api/common.py:120
 msgid "offset param must be an integer"
-msgstr ""
+msgstr "offset 매개변수는 정수여야 함"
 
 #: cinder/api/common.py:134
 msgid "offset param must be positive"
-msgstr ""
+msgstr "offset 매개변수가 양수여야 함"
 
 #: cinder/api/common.py:162
 #, python-format
 msgid "marker [%s] not found"
-msgstr ""
+msgstr "마커 [%s]을(를) 찾을 수 없음"
 
 #: cinder/api/common.py:189
 #, python-format
 msgid "href %s does not contain version"
-msgstr ""
+msgstr "href %s에 버전이 없음"
 
 #: cinder/api/extensions.py:183
 msgid "Initializing extension manager."
-msgstr ""
+msgstr "확장기능 관리자를 초기화 중입니다. "
 
 #: cinder/api/extensions.py:198
 #, python-format
 msgid "Loaded extension: %s"
-msgstr ""
+msgstr "로드된 확장: %s"
 
 #: cinder/api/extensions.py:236
 #, python-format
 msgid "Ext name: %s"
-msgstr ""
+msgstr "Ext 이름: %s"
 
 #: cinder/api/extensions.py:237
 #, python-format
 msgid "Ext alias: %s"
-msgstr ""
+msgstr "Ext 별명: %s"
 
 #: cinder/api/extensions.py:238
 #, python-format
 msgid "Ext description: %s"
-msgstr ""
+msgstr "Ext 설명: %s"
 
 #: cinder/api/extensions.py:240
 #, python-format
 msgid "Ext namespace: %s"
-msgstr ""
+msgstr "Ext 네임스페이스: %s"
 
 #: cinder/api/extensions.py:241
 #, python-format
 msgid "Ext updated: %s"
-msgstr ""
+msgstr "Ext 업데이트: %s"
 
 #: cinder/api/extensions.py:243
 #, python-format
 msgid "Exception loading extension: %s"
-msgstr ""
+msgstr "확장 로드 예외: %s"
 
 #: cinder/api/extensions.py:257
 #, python-format
 msgid "Loading extension %s"
-msgstr ""
+msgstr "%s 확장 로드 중"
 
 #: cinder/api/extensions.py:263
 #, python-format
 msgid "Calling extension factory %s"
-msgstr ""
+msgstr "확장 팩토리 %s 호출 중"
 
 #: cinder/api/extensions.py:277
 #, python-format
 msgid "osapi_volume_extension is set to deprecated path: %s"
-msgstr ""
+msgstr "osapi_volume_extension이 더 이상 사용되지 않는 경로로 설정됨: %s"
 
 #: cinder/api/extensions.py:279
 #, python-format
 msgid ""
 "Please set your flag or cinder.conf settings for osapi_volume_extension "
 "to: %s"
-msgstr ""
+msgstr "osapi_volume_extension에 대한 플래그 또는 cinder.conf 설정을 다음으로 설정: %s"
 
 #: cinder/api/extensions.py:288
 #, python-format
 msgid "Failed to load extension %(ext_factory)s: %(exc)s"
-msgstr ""
+msgstr "%(ext_factory)s 확장을 로드하지 못했음: %(exc)s"
 
 #: cinder/api/extensions.py:357
 #, python-format
 msgid "Failed to load extension %(classpath)s: %(exc)s"
-msgstr ""
+msgstr "%(classpath)s 확장을 로드하지 못했음: %(exc)s"
 
 #: cinder/api/extensions.py:382
 #, python-format
 msgid "Failed to load extension %(ext_name)s: %(exc)s"
-msgstr ""
+msgstr "%(ext_name)s 확장을 로드하지 못했음: %(exc)s"
 
 #: cinder/api/sizelimit.py:25
 msgid ""
@@ -1058,66 +1061,66 @@ msgstr ""
 
 #: cinder/api/xmlutil.py:266
 msgid "element is not a child"
-msgstr ""
+msgstr "요소가 하위가 아님"
 
 #: cinder/api/xmlutil.py:463
 msgid "root element selecting a list"
-msgstr ""
+msgstr "목록을 선택하는 루트 요소"
 
 #: cinder/api/xmlutil.py:786
 #, python-format
 msgid "Template tree mismatch; adding slave %(slavetag)s to master %(mastertag)s"
-msgstr ""
+msgstr "템플리트 트리 불일치. 슬레이브 %(slavetag)s을(를) 마스터 %(mastertag)s에 추가"
 
 #: cinder/api/xmlutil.py:907
 msgid "subclasses must implement construct()!"
-msgstr ""
+msgstr "서브클래스가 construct()를 구현해야 합니다!"
 
 #: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
-msgstr ""
+msgstr "%(resource)s '%(id)s'을(를) '%(update)r'(으)로 업데이트"
 
 #: cinder/api/contrib/backups.py:161
 #, python-format
 msgid "show called for member %s"
-msgstr ""
+msgstr "%s 멤버에 대한 호출 표시"
 
 #: cinder/api/contrib/backups.py:173
 #, python-format
 msgid "delete called for member %s"
-msgstr ""
+msgstr "%s 멤버에 대한 호출 삭제"
 
 #: cinder/api/contrib/backups.py:176
 #, python-format
 msgid "Delete backup with id: %s"
-msgstr ""
+msgstr "ID가 %s인 백업 삭제"
 
 #: cinder/api/contrib/backups.py:218
 #, python-format
 msgid "Creating new backup %s"
-msgstr ""
+msgstr "새 백업 %s 삭제"
 
 #: cinder/api/contrib/backups.py:228 cinder/api/contrib/backups.py:260
 #: cinder/api/contrib/volume_transfer.py:157
 #: cinder/api/contrib/volume_transfer.py:193
 msgid "Incorrect request body format"
-msgstr ""
+msgstr "올바르지 않은 요청 본문 형식"
 
 #: cinder/api/contrib/backups.py:234
 #, python-format
 msgid "Creating backup of volume %(volume_id)s in container %(container)s"
-msgstr ""
+msgstr "%(container)s 컨테이너에서 %(volume_id)s 볼륨의 백업 작성"
 
 #: cinder/api/contrib/backups.py:257
 #, python-format
 msgid "Restoring backup %(backup_id)s (%(body)s)"
-msgstr ""
+msgstr "%(backup_id)s 백업 복원(%(body)s)"
 
 #: cinder/api/contrib/backups.py:267
 #, python-format
 msgid "Restoring backup %(backup_id)s to volume %(volume_id)s"
-msgstr ""
+msgstr "%(backup_id)s 백업을 %(volume_id)s 볼륨으로 복원"
 
 #: cinder/api/contrib/backups.py:300
 #, python-format
@@ -1150,39 +1153,39 @@ msgstr ""
 
 #: cinder/api/contrib/extended_snapshot_attributes.py:60
 msgid "Snapshot not found."
-msgstr ""
+msgstr "스냅샷을 찾을 수 없습니다. "
 
 #: cinder/api/contrib/hosts.py:86 cinder/api/openstack/wsgi.py:237
 msgid "cannot understand XML"
-msgstr ""
+msgstr "XML을 이해할 수 없음"
 
 #: cinder/api/contrib/hosts.py:136
 #, python-format
 msgid "Host '%s' could not be found."
-msgstr ""
+msgstr "'%s' 호스트를 찾을 수 없습니다. "
 
 #: cinder/api/contrib/hosts.py:165
 #, python-format
 msgid "Invalid status: '%s'"
-msgstr ""
+msgstr "올바르지 않은 상태: '%s'"
 
 #: cinder/api/contrib/hosts.py:168
 #, python-format
 msgid "Invalid update setting: '%s'"
-msgstr ""
+msgstr "올바르지 않은 업데이트 설정: '%s'"
 
 #: cinder/api/contrib/hosts.py:180
 #, python-format
 msgid "Setting host %(host)s to %(state)s."
-msgstr ""
+msgstr "%(host)s 호스트를 %(state)s(으)로 설정 중입니다. "
 
 #: cinder/api/contrib/hosts.py:206
 msgid "Describe-resource is admin only functionality"
-msgstr ""
+msgstr "Describe-resource 기능은 관리자만 사용가능"
 
 #: cinder/api/contrib/hosts.py:214
 msgid "Host not found"
-msgstr ""
+msgstr "호스트를 찾을 수 없음"
 
 #: cinder/api/contrib/qos_specs_manage.py:110
 msgid "Please specify a name for QoS specs."
@@ -1219,7 +1222,7 @@ msgstr ""
 
 #: cinder/api/contrib/quotas.py:68
 msgid "Quota limit must be -1 or greater."
-msgstr ""
+msgstr "할당량 한계는 -1 이상이어야 합니다. "
 
 #: cinder/api/contrib/quotas.py:105
 msgid "Missing required element quota_set in request body."
@@ -1232,7 +1235,7 @@ msgstr ""
 
 #: cinder/api/contrib/scheduler_hints.py:36
 msgid "Malformed scheduler_hints attribute"
-msgstr ""
+msgstr "형식이 틀린 scheduler_hints 속성"
 
 #: cinder/api/contrib/services.py:91
 msgid ""
@@ -1266,19 +1269,19 @@ msgstr ""
 
 #: cinder/api/contrib/types_extra_specs.py:101
 msgid "Request body empty"
-msgstr ""
+msgstr "요청 본문이 비어 있음"
 
 #: cinder/api/contrib/types_extra_specs.py:105
 #: cinder/api/v1/snapshot_metadata.py:75 cinder/api/v1/volume_metadata.py:75
 #: cinder/api/v2/snapshot_metadata.py:75 cinder/api/v2/volume_metadata.py:74
 msgid "Request body and URI mismatch"
-msgstr ""
+msgstr "요청 본문 및 URI 불일치"
 
 #: cinder/api/contrib/types_extra_specs.py:108
 #: cinder/api/v1/snapshot_metadata.py:79 cinder/api/v1/volume_metadata.py:79
 #: cinder/api/v2/snapshot_metadata.py:79 cinder/api/v2/volume_metadata.py:78
 msgid "Request body contains too many items"
-msgstr ""
+msgstr "요청 본문에 너무 많은 항목이 들어있음"
 
 #: cinder/api/contrib/types_extra_specs.py:152
 msgid ""
@@ -1317,7 +1320,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_actions.py:230
 msgid "No image_name was specified in request."
-msgstr ""
+msgstr "요청에 image_name이 지정되지 않았습니다. "
 
 #: cinder/api/contrib/volume_actions.py:238
 msgid "Bad value for 'force' parameter."
@@ -1327,26 +1330,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1467,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1462,17 +1477,17 @@ msgstr ""
 
 #: cinder/api/middleware/auth.py:112
 msgid "Invalid service catalog json."
-msgstr ""
+msgstr "올바르지 않은 서비스 카탈로그 json입니다. "
 
 #: cinder/api/middleware/fault.py:44
 #, python-format
 msgid "Caught error: %s"
-msgstr ""
+msgstr "오류 발견: %s"
 
 #: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:978
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
-msgstr ""
+msgstr "%(url)s이(가) HTTP %(status)d(으)로 리턴되었음"
 
 #: cinder/api/middleware/fault.py:69
 #, python-format
@@ -1482,28 +1497,28 @@ msgstr ""
 #: cinder/api/middleware/sizelimit.py:55 cinder/api/middleware/sizelimit.py:64
 #: cinder/api/middleware/sizelimit.py:78
 msgid "Request is too large."
-msgstr ""
+msgstr "요청이 너무 큽니다. "
 
 #: cinder/api/openstack/__init__.py:69
 msgid "Must specify an ExtensionManager class"
-msgstr ""
+msgstr "ExtensionManager 클래스를 지정해야 함"
 
 #: cinder/api/openstack/__init__.py:80
 #, python-format
 msgid "Extended resource: %s"
-msgstr ""
+msgstr "확장 자원: %s"
 
 #: cinder/api/openstack/__init__.py:104
 #, python-format
 msgid ""
 "Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
 "resource"
-msgstr ""
+msgstr "%(ext_name)s 확장: %(collection)s 자원을 확장할 수 없음: 해당 자원이 없음"
 
 #: cinder/api/openstack/__init__.py:110
 #, python-format
 msgid "Extension %(ext_name)s extending resource: %(collection)s"
-msgstr ""
+msgstr "%(ext_name)s 확장이 자원을 확장함: %(collection)s"
 
 #: cinder/api/openstack/__init__.py:126
 msgid ""
@@ -1519,43 +1534,43 @@ msgstr ""
 
 #: cinder/api/openstack/wsgi.py:212 cinder/api/openstack/wsgi.py:628
 msgid "cannot understand JSON"
-msgstr ""
+msgstr "JSON을 이해할 수 없음"
 
 #: cinder/api/openstack/wsgi.py:633
 msgid "too many body keys"
-msgstr ""
+msgstr "본문 키가 너무 많음"
 
 #: cinder/api/openstack/wsgi.py:671
 #, python-format
 msgid "Exception handling resource: %s"
-msgstr ""
+msgstr "자원 처리 예외: %s"
 
 #: cinder/api/openstack/wsgi.py:676
 #, python-format
 msgid "Fault thrown: %s"
-msgstr ""
+msgstr "처리된 결함: %s"
 
 #: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "HTTP exception thrown: %s"
-msgstr ""
+msgstr "HTTP 예외 처리: %s"
 
 #: cinder/api/openstack/wsgi.py:787
 msgid "Empty body provided in request"
-msgstr ""
+msgstr "요청에서 빈 본문이 제공됨"
 
 #: cinder/api/openstack/wsgi.py:793
 msgid "Unrecognized Content-Type provided in request"
-msgstr ""
+msgstr "인식되지 않는 Content-Type이 요청에서 제공됨"
 
 #: cinder/api/openstack/wsgi.py:797
 msgid "No Content-Type provided in request"
-msgstr ""
+msgstr "요청에서 Content-Type이 제공되지 않음"
 
 #: cinder/api/openstack/wsgi.py:908
 #, python-format
 msgid "There is no such action: %s"
-msgstr ""
+msgstr "해당 조치가 없음: %s"
 
 #: cinder/api/openstack/wsgi.py:911 cinder/api/openstack/wsgi.py:924
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
@@ -1567,20 +1582,20 @@ msgstr ""
 #: cinder/api/v2/volume_metadata.py:52 cinder/api/v2/volume_metadata.py:70
 #: cinder/api/v2/volume_metadata.py:95 cinder/api/v2/volume_metadata.py:120
 msgid "Malformed request body"
-msgstr ""
+msgstr "형식이 틀린 요청 본문"
 
 #: cinder/api/openstack/wsgi.py:921
 msgid "Unsupported Content-Type"
-msgstr ""
+msgstr "지원되지 않는 Content-Type"
 
 #: cinder/api/openstack/wsgi.py:933
 msgid "Malformed request url"
-msgstr ""
+msgstr "형식이 틀린 요청 URL"
 
 #: cinder/api/openstack/wsgi.py:981
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
-msgstr ""
+msgstr "%(url)s이(가) 결함을 리턴함: %(e)s"
 
 #: cinder/api/openstack/volume/__init__.py:25
 msgid ""
@@ -1599,18 +1614,18 @@ msgstr ""
 msgid ""
 "Only %(value)s %(verb)s request(s) can be made to %(uri)s every "
 "%(unit_string)s."
-msgstr ""
+msgstr "%(value)s %(verb)s 요청만이 %(unit_string)s마다 %(uri)s에 적용될 수 있습니다. "
 
 #: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
-msgstr ""
+msgstr "이 요청이 비율 제한되었습니다. "
 
 #: cinder/api/v1/snapshot_metadata.py:37 cinder/api/v1/snapshot_metadata.py:117
 #: cinder/api/v1/snapshot_metadata.py:156 cinder/api/v2/snapshot_metadata.py:37
 #: cinder/api/v2/snapshot_metadata.py:117
 #: cinder/api/v2/snapshot_metadata.py:156
 msgid "snapshot does not exist"
-msgstr ""
+msgstr "스냅샷이 없음"
 
 #: cinder/api/v1/snapshot_metadata.py:139
 #: cinder/api/v1/snapshot_metadata.py:149 cinder/api/v1/volume_metadata.py:139
@@ -1618,12 +1633,12 @@ msgstr ""
 #: cinder/api/v2/snapshot_metadata.py:149 cinder/api/v2/volume_metadata.py:138
 #: cinder/api/v2/volume_metadata.py:148
 msgid "Metadata item was not found"
-msgstr ""
+msgstr "메타데이터 항목이 없음"
 
 #: cinder/api/v1/snapshots.py:119 cinder/api/v2/snapshots.py:120
 #, python-format
 msgid "Delete snapshot with id: %s"
-msgstr ""
+msgstr "ID가 %s인 스냅샷 삭제"
 
 #: cinder/api/v1/snapshots.py:173 cinder/api/v2/snapshots.py:184
 msgid "'volume_id' must be specified"
@@ -1632,33 +1647,33 @@ msgstr ""
 #: cinder/api/v1/snapshots.py:182 cinder/api/v2/snapshots.py:193
 #, python-format
 msgid "Create snapshot from volume %s"
-msgstr ""
+msgstr "%s 볼륨에서 스냅샷 작성"
 
 #: cinder/api/v1/snapshots.py:186 cinder/api/v2/snapshots.py:202
 #, python-format
 msgid "Invalid value '%s' for force. "
-msgstr ""
+msgstr "강제 실행에 대한 올바르지 않은 값 '%s'입니다. "
 
 #: cinder/api/v1/volume_metadata.py:37 cinder/api/v1/volume_metadata.py:117
 #: cinder/api/v1/volume_metadata.py:156 cinder/api/v2/volume_metadata.py:36
 #: cinder/api/v2/volume_metadata.py:116 cinder/api/v2/volume_metadata.py:155
 msgid "volume does not exist"
-msgstr ""
+msgstr "볼륨이 없음"
 
 #: cinder/api/v1/volumes.py:114
 #, python-format
 msgid "vol=%s"
-msgstr ""
+msgstr "vol=%s"
 
 #: cinder/api/v1/volumes.py:293 cinder/api/v2/volumes.py:181
 #, python-format
 msgid "Delete volume with id: %s"
-msgstr ""
+msgstr "ID가 %s인 볼륨 삭제"
 
 #: cinder/api/v1/volumes.py:347 cinder/api/v1/volumes.py:351
 #: cinder/api/v2/volumes.py:251 cinder/api/v2/volumes.py:255
 msgid "Invalid imageRef provided."
-msgstr ""
+msgstr "올바르지 않은 imageRef가 제공되었습니다. "
 
 #: cinder/api/v1/volumes.py:391 cinder/api/v2/volumes.py:308
 #, python-format
@@ -1673,12 +1688,12 @@ msgstr ""
 #: cinder/api/v1/volumes.py:415 cinder/api/v2/volumes.py:331
 #, python-format
 msgid "Create volume of %s GB"
-msgstr ""
+msgstr "%s GB의 볼륨 작성"
 
 #: cinder/api/v1/volumes.py:504
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
-msgstr ""
+msgstr "조회에서 '%(bad_options)s' 옵션 제거 중"
 
 #: cinder/api/v2/snapshots.py:111 cinder/api/v2/snapshots.py:126
 #: cinder/api/v2/snapshots.py:267
@@ -1698,49 +1713,49 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
-msgstr ""
+msgstr "조회에서 '%s' 옵션 제거 중"
 
 #: cinder/backup/api.py:66
 msgid "Backup status must be available or error"
-msgstr ""
+msgstr "백업 상태는 사용 가능 또는 오류여야 함"
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
-msgstr ""
+msgstr "백업할 볼륨이 사용 가능해야 함"
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
-msgstr ""
+msgstr "백업 상태가 사용 가능해야 함"
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
-msgstr ""
+msgstr "복원할 백업이 올바르지 않은 크기임"
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
-msgstr ""
+msgstr "%(backup_id)s 백업 복원을 위해 %(size)sGB의 볼륨 작성"
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
-msgstr ""
+msgstr "복원할 볼륨이 사용 가능해야 함"
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
-msgstr ""
+msgstr "볼륨 크기 %(volume_size)d은(는) %(size)d 크기의 백업을 복원하기에 너무 작습니다. "
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
-msgstr ""
+msgstr "%(volume_id)s 볼륨을 %(backup_id)s 백업의 복원으로 겹쳐씀"
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2037,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2102,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,243 +2113,302 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:463
+#, python-format
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:474
+#, python-format
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:486
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "cmd2='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:492
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Pipe1 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
 #, python-format
 msgid "unsupported compression algorithm: %s"
-msgstr ""
+msgstr "지원되지 않는 압축 알고리즘: %s"
 
 #: cinder/backup/drivers/swift.py:122
 #, python-format
@@ -2344,24 +2418,24 @@ msgstr ""
 #: cinder/backup/drivers/swift.py:140
 #, python-format
 msgid "_create_container started, container: %(container)s,backup: %(backup_id)s"
-msgstr ""
+msgstr "_create_container가 시작됨. 컨테이너: %(container)s, 백업: %(backup_id)s"
 
 #: cinder/backup/drivers/swift.py:159
 #, python-format
 msgid "_generate_swift_object_name_prefix: %s"
-msgstr ""
+msgstr "_generate_swift_object_name_prefix: %s"
 
 #: cinder/backup/drivers/swift.py:168
 #, python-format
 msgid "generated object list: %s"
-msgstr ""
+msgstr "생성된 오브젝트 목록: %s"
 
 #: cinder/backup/drivers/swift.py:179
 #, python-format
 msgid ""
 "_write_metadata started, container name: %(container)s, metadata "
 "filename: %(filename)s"
-msgstr ""
+msgstr "_write_metadata가 시작됨. 컨테이너 이름: %(container)s, 메타데이터 파일 이름: %(filename)s"
 
 #: cinder/backup/drivers/swift.py:197
 #, python-format
@@ -2370,27 +2444,29 @@ msgid ""
 "[%(etag)s] is not the same as MD5 of metadata file sent to swift "
 "[%(md5)s]"
 msgstr ""
+"메타데이터 파일을 swift에 작성하는 중 오류 발생. [%(etag)s] swift에 있는 메타데이터 파일의 MD5는 "
+"[%(md5)s] swift로 보낸 메타데이터 파일의 MD5와 같지 않음"
 
 #: cinder/backup/drivers/swift.py:202
 msgid "_write_metadata finished"
-msgstr ""
+msgstr "_write_metadata가 완료됨"
 
 #: cinder/backup/drivers/swift.py:207
 #, python-format
 msgid ""
 "_read_metadata started, container name: %(container)s, metadata filename:"
 " %(filename)s"
-msgstr ""
+msgstr "_read_metadata가 시작됨. 컨테이너 이름: %(container)s, 메타데이터 파일 이름: %(filename)s"
 
 #: cinder/backup/drivers/swift.py:212
 #, python-format
 msgid "_read_metadata finished (%s)"
-msgstr ""
+msgstr "_read_metadata가 완료됨(%s)"
 
 #: cinder/backup/drivers/swift.py:222
 #, python-format
 msgid "volume size %d is invalid."
-msgstr ""
+msgstr "볼륨 크기 %d이(가) 올바르지 않음"
 
 #: cinder/backup/drivers/swift.py:236
 #, python-format
@@ -2399,10 +2475,12 @@ msgid ""
 "%(volume_size_bytes)d, swift object names prefix %(object_prefix)s, "
 "availability zone: %(availability_zone)s"
 msgstr ""
+"%(volume_id)s 볼륨을 swift로 백업하기 시작. 볼륨 크기: %(volume_size_bytes)d, swift "
+"오브젝트 이름 접두부 %(object_prefix)s, 사용 가능한 구역: %(availability_zone)s"
 
 #: cinder/backup/drivers/swift.py:260
 msgid "reading chunk of data from volume"
-msgstr ""
+msgstr "볼륨에서 데이터 청크 읽는 중"
 
 #: cinder/backup/drivers/swift.py:267
 #, python-format
@@ -2410,24 +2488,26 @@ msgid ""
 "compressed %(data_size_bytes)d bytes of data to %(comp_size_bytes)d bytes"
 " using %(algorithm)s"
 msgstr ""
+"%(data_size_bytes)d바이트의 데이터를 %(comp_size_bytes)d bytes using "
+"%(algorithm)s(으)로 압축"
 
 #: cinder/backup/drivers/swift.py:276
 msgid "not compressing data"
-msgstr ""
+msgstr "데이터가 압축되지 않음"
 
 #: cinder/backup/drivers/swift.py:280
 msgid "About to put_object"
-msgstr ""
+msgstr "put_object에 대한 정보"
 
 #: cinder/backup/drivers/swift.py:286
 #, python-format
 msgid "swift MD5 for %(object_name)s: %(etag)s"
-msgstr ""
+msgstr "%(object_name)s에 대한 swift MD5: %(etag)s"
 
 #: cinder/backup/drivers/swift.py:290
 #, python-format
 msgid "backup MD5 for %(object_name)s: %(md5)s"
-msgstr ""
+msgstr "%(object_name)s에 대한 백업 MD5: %(md5)s"
 
 #: cinder/backup/drivers/swift.py:293
 #, python-format
@@ -2435,15 +2515,17 @@ msgid ""
 "error writing object to swift, MD5 of object in swift %(etag)s is not the"
 " same as MD5 of object sent to swift %(md5)s"
 msgstr ""
+"오브젝트를 swift에 기록하는 중 오류 발생. %(etag)s swift에 있는 오브젝트의 MD5는 %(md5)s swift로 "
+"보낸 오브젝트의 MD5와 같지 않음"
 
 #: cinder/backup/drivers/swift.py:301
 msgid "Calling eventlet.sleep(0)"
-msgstr ""
+msgstr "eventlet.sleep(0) 호출"
 
 #: cinder/backup/drivers/swift.py:319
 #, python-format
 msgid "backup %s finished."
-msgstr ""
+msgstr "%s 백업이 완료되었습니다. "
 
 #: cinder/backup/drivers/swift.py:352
 #, python-format
@@ -2453,18 +2535,18 @@ msgstr ""
 #: cinder/backup/drivers/swift.py:362
 #, python-format
 msgid "v1 swift volume backup restore of %s started"
-msgstr ""
+msgstr "%s의 v1 swift 볼륨 백업 복원이 시작됨"
 
 #: cinder/backup/drivers/swift.py:367
 #, python-format
 msgid "metadata_object_names = %s"
-msgstr ""
+msgstr "metadata_object_names = %s"
 
 #: cinder/backup/drivers/swift.py:373
 msgid ""
 "restore_backup aborted, actual swift object list in swift does not match "
 "object list stored in metadata"
-msgstr ""
+msgstr "restore_backup이 중단됨. swift의 실제 swift 오브젝트가 메타데이터에 저장된 오브젝트 목록과 일치하지 않음"
 
 #: cinder/backup/drivers/swift.py:379
 #, python-format
@@ -2472,16 +2554,18 @@ msgid ""
 "restoring object from swift. backup: %(backup_id)s, container: "
 "%(container)s, swift object name: %(object_name)s, volume: %(volume_id)s"
 msgstr ""
+"swift에서 오브젝트 복원. 백업: %(backup_id)s, 컨테이너: %(container)s, swift 오브젝트 이름: "
+"%(object_name)s, 볼륨: %(volume_id)s"
 
 #: cinder/backup/drivers/swift.py:395
 #, python-format
 msgid "decompressing data using %s algorithm"
-msgstr ""
+msgstr "%s 알고리즘을 사용하여 데이터 압축 풀기"
 
 #: cinder/backup/drivers/swift.py:418
 #, python-format
 msgid "v1 swift volume backup restore of %s finished"
-msgstr ""
+msgstr "%s의 v1 swift 볼륨 백업 복원이 완료됨"
 
 #: cinder/backup/drivers/swift.py:426
 #, python-format
@@ -2489,40 +2573,42 @@ msgid ""
 "starting restore of backup %(object_prefix)s from swift container: "
 "%(container)s, to volume %(volume_id)s, backup: %(backup_id)s"
 msgstr ""
+"swift 컨테이너 %(container)s에서 %(volume_id)s 볼륨, %(backup_id)s 백업으로 "
+"%(object_prefix)s 백업의 복원 시작"
 
 #: cinder/backup/drivers/swift.py:440
 #, python-format
 msgid "Restoring swift backup version %s"
-msgstr ""
+msgstr "swift 백업 버전 %s 복원"
 
 #: cinder/backup/drivers/swift.py:445
 #, python-format
 msgid "No support to restore swift backup version %s"
-msgstr ""
+msgstr "swift 백업 버전 %s 복원이 지원되지 않음"
 
 #: cinder/backup/drivers/swift.py:461
 #, python-format
 msgid "restore %(backup_id)s to %(volume_id)s finished."
-msgstr ""
+msgstr "%(backup_id)s에서 %(volume_id)s(으)로의 복원이 완료되었습니다. "
 
 #: cinder/backup/drivers/swift.py:475
 msgid "swift error while listing objects, continuing with delete"
-msgstr ""
+msgstr "오브젝트를 나열하는 중 swift 오류 발생. 삭제 계속 진행"
 
 #: cinder/backup/drivers/swift.py:484
 #, python-format
 msgid "swift error while deleting object %s, continuing with delete"
-msgstr ""
+msgstr "%s 오브젝트를 삭제하는 중 swift 오류 발생. 삭제 계속 진행"
 
 #: cinder/backup/drivers/swift.py:487
 #, python-format
 msgid "deleted swift object: %(swift_object_name)s in container: %(container)s"
-msgstr ""
+msgstr "%(container)s 컨테이너에서 swift 오브젝트 %(swift_object_name)s을(를) 삭제함 "
 
 #: cinder/backup/drivers/swift.py:497
 #, python-format
 msgid "delete %s finished"
-msgstr ""
+msgstr "%s 삭제가 완료됨"
 
 #: cinder/backup/drivers/tsm.py:78
 #, python-format
@@ -2711,17 +2797,17 @@ msgstr ""
 #: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
-msgstr ""
+msgstr "%(volume_id)s 볼륨에 대한 iscsi 대상을 작성하지 못했습니다. "
 
 #: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
-msgstr ""
+msgstr "%(volume_id)s 볼륨에 대한 iscsi 대상을 제거하지 못했습니다. "
 
 #: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
-msgstr ""
+msgstr "%(volume_id)s 볼륨에 대한 iSCSI 대상을 첨부하지 못했습니다. "
 
 #: cinder/brick/exception.py:120
 #, python-format
@@ -2757,12 +2843,12 @@ msgstr ""
 
 #: cinder/brick/initiator/connector.py:609
 msgid "We are unable to locate any Fibre Channel devices"
-msgstr ""
+msgstr "파이버 채널 디바이스를 찾을 수 없음"
 
 #: cinder/brick/initiator/connector.py:619
 #, python-format
 msgid "Looking for Fibre Channel dev %(device)s"
-msgstr ""
+msgstr "파이버 채널 디바이스 %(device)s을(를) 찾는 중"
 
 #: cinder/brick/initiator/connector.py:629
 msgid "Fibre Channel volume device not found."
@@ -2781,7 +2867,7 @@ msgstr ""
 #: cinder/brick/initiator/connector.py:658
 #, python-format
 msgid "Multipath device discovered %(device)s"
-msgstr ""
+msgstr "다중 경로 디바이스 %(device)s을(를) 발견함"
 
 #: cinder/brick/initiator/connector.py:776
 #, python-format
@@ -2820,7 +2906,7 @@ msgstr ""
 
 #: cinder/brick/initiator/linuxfc.py:50 cinder/brick/initiator/linuxfc.py:56
 msgid "systool is not installed"
-msgstr ""
+msgstr "systool이 설치되지 않음"
 
 #: cinder/brick/initiator/linuxscsi.py:99
 #: cinder/brick/initiator/linuxscsi.py:107
@@ -2853,7 +2939,7 @@ msgstr ""
 #: cinder/brick/iscsi/iscsi.py:172
 #, python-format
 msgid "Creating iscsi_target for: %s"
-msgstr ""
+msgstr "%s에 대한 iscsi_target 작성"
 
 #: cinder/brick/iscsi/iscsi.py:179
 #, python-format
@@ -2862,7 +2948,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2873,59 +2959,65 @@ msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
+"볼륨 ID %(vol_id)s에 대한 iscsi 대상을 작성하지 못했습니다. tgtd config 파일에 'include "
+"%(volumes_dir)s/*'이(가) 포함되는지 확인하십시오. "
 
 #: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
-msgstr ""
+msgstr "%s에 대한 iscsi_target 제거"
 
 #: cinder/brick/iscsi/iscsi.py:256
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
-msgid "valid iqn needed for show_target"
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
+msgid "valid iqn needed for show_target"
+msgstr "show_target에 필요한 올바른 iqn"
+
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
-msgstr ""
+msgstr "%s 볼륨에 대한 iscsi_target 제거"
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
-msgstr ""
+msgstr "%s 볼륨에 대한 iscsi_target 작성"
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
-msgstr ""
+msgstr "iscsi_target 제거: %s"
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
-msgstr ""
+msgstr "개시자 iqn %s을(를) 대상에 추가하지 못함"
 
 #: cinder/brick/local_dev/lvm.py:75
 msgid "Error creating Volume Group"
@@ -2945,7 +3037,7 @@ msgstr ""
 #: cinder/brick/local_dev/lvm.py:682
 #, python-format
 msgid "StdOut  :%s"
-msgstr ""
+msgstr "StdOut: %s"
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
 #: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:510
@@ -2953,12 +3045,12 @@ msgstr ""
 #: cinder/brick/local_dev/lvm.py:683
 #, python-format
 msgid "StdErr  :%s"
-msgstr ""
+msgstr "StdErr :%s"
 
 #: cinder/brick/local_dev/lvm.py:82
 #, python-format
 msgid "Unable to locate Volume Group %s"
-msgstr ""
+msgstr "볼륨그룹 %s를 찾을 수 없음"
 
 #: cinder/brick/local_dev/lvm.py:157
 msgid "Error querying thin pool about data_percent"
@@ -2967,7 +3059,7 @@ msgstr ""
 #: cinder/brick/local_dev/lvm.py:370
 #, python-format
 msgid "Unable to find VG: %s"
-msgstr ""
+msgstr "VG에서 찾을 수 없습니다: %s"
 
 #: cinder/brick/local_dev/lvm.py:420
 msgid ""
@@ -3047,81 +3139,81 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
 #: cinder/common/sqlalchemyutils.py:66
 #: cinder/openstack/common/db/sqlalchemy/utils.py:72
 msgid "Id not in sort_keys; is sort_keys unique?"
-msgstr ""
+msgstr "ID가 sort_keys에 없습니다. sort_keys가 고유합니까?"
 
 #: cinder/common/sqlalchemyutils.py:114
 #: cinder/openstack/common/db/sqlalchemy/utils.py:120
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
-msgstr ""
+msgstr "알 수 없는 정렬 방향입니다. 'desc' 또는 'asc'여야 함"
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
 
 #: cinder/db/sqlalchemy/api.py:65
 msgid "Use of empty request context is deprecated"
-msgstr ""
+msgstr "비어 있는 요청 컨텍스트의 사용은 더 이상 사용되지 않음"
 
 #: cinder/db/sqlalchemy/api.py:192
 #, python-format
 msgid "Unrecognized read_deleted value '%s'"
-msgstr ""
+msgstr "인식되지 않는 read_deleted 값 '%s'"
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3130,19 +3222,19 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migration.py:37
 msgid "version should be an integer"
-msgstr ""
+msgstr "버전은 정수여야 함"
 
 #: cinder/db/sqlalchemy/migration.py:64
 msgid "Upgrade DB using Essex release first."
-msgstr ""
+msgstr "먼저 Essex 릴리스를 사용하여 DB를 업그레이드하십시오. "
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/001_cinder_init.py:240
 msgid "Exception while creating table."
-msgstr ""
+msgstr "테이블 작성 중에 예외가 발생했습니다. "
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/001_cinder_init.py:269
 msgid "Downgrade from initial Cinder install is unsupported."
-msgstr ""
+msgstr "초기 Cinder에서의 다운그레이드는 지원되지 않습니다. "
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:49
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:74
@@ -3154,7 +3246,7 @@ msgstr ""
 #: cinder/db/sqlalchemy/migrate_repo/versions/020_add_volume_admin_metadata_table.py:46
 #, python-format
 msgid "Table |%s| not created!"
-msgstr ""
+msgstr "|%s| 테이블이 작성되지 않았습니다!"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:127
 msgid "Dropping foreign key reservations_ibfk_1 failed."
@@ -3162,31 +3254,31 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:133
 msgid "quota_classes table not dropped"
-msgstr ""
+msgstr "quota_classes 테이블이 삭제되지 않았음"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:140
 msgid "quota_usages table not dropped"
-msgstr ""
+msgstr "quota_usages 테이블이 삭제되지 않았음"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:147
 msgid "reservations table not dropped"
-msgstr ""
+msgstr "예약 테이블이 삭제되지 않았음"
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
-msgstr ""
+msgstr "volume_glance_metadata 테이블이 삭제되지 않음"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/008_add_backup.py:68
 msgid "backups table not dropped"
-msgstr ""
+msgstr "백업 테이블이 삭제되지 않았음"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/009_add_snapshot_metadata_table.py:58
 msgid "snapshot_metadata table not dropped"
-msgstr ""
+msgstr "snapshot_metadata 테이블이 삭제되지 않았음"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/010_add_transfers_table.py:61
 msgid "transfers table not dropped"
@@ -3279,12 +3371,12 @@ msgstr ""
 
 #: cinder/image/image_utils.py:94 cinder/image/image_utils.py:199
 msgid "'qemu-img info' parsing failed."
-msgstr ""
+msgstr "'qemu-img info' 구문 분석에 실패했습니다. "
 
 #: cinder/image/image_utils.py:101
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
-msgstr ""
+msgstr "fmt=%(fmt)s 백업: %(backing_file)s"
 
 #: cinder/image/image_utils.py:109 cinder/image/image_utils.py:192
 #, python-format
@@ -3314,7 +3406,7 @@ msgstr ""
 #: cinder/image/image_utils.py:206
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
-msgstr ""
+msgstr "fmt=%(fmt)s 백업: %(backing_file)s"
 
 #: cinder/image/image_utils.py:224
 #, python-format
@@ -3324,7 +3416,7 @@ msgstr ""
 #: cinder/image/image_utils.py:260
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
-msgstr ""
+msgstr "%(f1)s(으)로 변환되었지만 이제 형식이 %(f2)s임"
 
 #: cinder/keymgr/conf_key_mgr.py:78
 msgid ""
@@ -3344,22 +3436,22 @@ msgstr ""
 #: cinder/openstack/common/eventlet_backdoor.py:140
 #, python-format
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
-msgstr ""
+msgstr "Eventlet 백도어는 프로세스 %(pid)d 일 동안 %(port)s에서 수신"
 
 #: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
-msgstr ""
+msgstr "원래 예외가 삭제됨: %s"
 
 #: cinder/openstack/common/excutils.py:91
 #, python-format
 msgid "Unexpected exception occurred %d time(s)... retrying."
-msgstr ""
+msgstr "예기치 않은 예외 %d 번 발생하였습니다... 다시 시도중."
 
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
-msgstr ""
+msgstr "캐시된 파일 %s 다시 로드 중"
 
 #: cinder/openstack/common/gettextutils.py:271
 msgid "Message objects do not support addition."
@@ -3378,153 +3470,153 @@ msgstr ""
 
 #: cinder/openstack/common/imageutils.py:104
 msgid "Snapshot list encountered but no header found!"
-msgstr ""
+msgstr "스냅샷 목록이 있지만 헤더를 찾을 수 없습니다!"
 
 #: cinder/openstack/common/lockutils.py:102
 #, python-format
 msgid "Could not release the acquired lock `%s`"
-msgstr ""
+msgstr "획득한 `%s` 잠금을 해제할 수 없음"
 
 #: cinder/openstack/common/lockutils.py:189
 #, python-format
 msgid "Got semaphore \"%(lock)s\" for method \"%(method)s\"..."
-msgstr ""
+msgstr "\"%(method)s\" 메소드에 대한 세마포어 \"%(lock)s\" 확보 ..."
 
 #: cinder/openstack/common/lockutils.py:200
 #, python-format
 msgid "Attempting to grab file lock \"%(lock)s\" for method \"%(method)s\"..."
-msgstr ""
+msgstr "\"%(method)s\" 메소드에 대한 파일 잠금 \"%(lock)s\"을(를) 잡으려고 시도 중..."
 
 #: cinder/openstack/common/lockutils.py:227
 #, python-format
 msgid "Got file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
-msgstr ""
+msgstr "\"%(method)s\" 메소드에 대한 %(path)s에 있는 파일 잠금 \"%(lock)s\" 확보 ..."
 
 #: cinder/openstack/common/lockutils.py:235
 #, python-format
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
-msgstr ""
+msgstr "\"%(method)s\" 메소드에 대한 %(path)s에 있는 파일 잠금 \"%(lock)s\" 해제..."
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
-msgstr ""
+msgstr "더 이상 사용되지 않음: %s"
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
-msgstr ""
+msgstr "로깅 구성 %(log_config)s 읽어오는데 실패함: %(err_msg)s"
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
-msgstr ""
+msgstr "syslog 기능이 다음 중 하나여야 함: %s"
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
-msgstr ""
+msgstr "더 이상 사용되지 않는 구성에 대한 심각한 호출: %(msg)s"
 
 #: cinder/openstack/common/loopingcall.py:82
 #, python-format
 msgid "task run outlasted interval by %s sec"
-msgstr ""
+msgstr "태스크 실행이 %s초의 간격을 지속함"
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
-msgstr ""
+msgstr "고정 기간 루프 호출에서"
 
 #: cinder/openstack/common/loopingcall.py:129
 #, python-format
 msgid "Dynamic looping call sleeping for %.02f seconds"
-msgstr ""
+msgstr "%.02f 초 동안 대기할 동적 순환 반복 호출"
 
 #: cinder/openstack/common/loopingcall.py:136
 msgid "in dynamic looping call"
-msgstr ""
+msgstr "동적 루프 호출에서"
 
 #: cinder/openstack/common/periodic_task.py:43
 #, python-format
 msgid "Unexpected argument for periodic task creation: %(arg)s."
-msgstr ""
+msgstr "주기적 태스크 작성에 대한 예기치 않은 인수: %(arg)s."
 
 #: cinder/openstack/common/periodic_task.py:134
 #, python-format
 msgid "Skipping periodic task %(task)s because its interval is negative"
-msgstr ""
+msgstr "간격이 음수이기 때문에 주기적 태스크 %(task)s을(를) 건너뜀"
 
 #: cinder/openstack/common/periodic_task.py:139
 #, python-format
 msgid "Skipping periodic task %(task)s because it is disabled"
-msgstr ""
+msgstr "사용 안하기 때문에 주기적 태스크 %(task)s을(를) 건너뜀"
 
 #: cinder/openstack/common/periodic_task.py:177
 #, python-format
 msgid "Running periodic task %(full_task_name)s"
-msgstr ""
+msgstr "주기적 태스크 %(full_task_name)s 실행 중"
 
 #: cinder/openstack/common/periodic_task.py:186
 #, python-format
 msgid "Error during %(full_task_name)s: %(e)s"
-msgstr ""
+msgstr "%(full_task_name)s 중 오류: %(e)s"
 
 #: cinder/openstack/common/policy.py:149
 #, python-format
 msgid ""
 "Inheritance-based rules are deprecated; use the default brain instead of "
 "%s."
-msgstr ""
+msgstr "상속 기반 규칙이 더 이상 사용되지 않습니다. %s 대신 기본 브레인을 사용하십시오. "
 
 #: cinder/openstack/common/policy.py:163
 #, python-format
 msgid "Failed to understand rule %(match)r"
-msgstr ""
+msgstr "%(match)r 규칙을 이해하지 못했음"
 
 #: cinder/openstack/common/policy.py:173
 #, python-format
 msgid "Inheritance-based rules are deprecated; update _check_%s"
-msgstr ""
+msgstr "상속 기반 규칙이 더 이상 사용되지 않음. _check_%s 업데이트"
 
 #: cinder/openstack/common/policy.py:180
 #, python-format
 msgid "No handler for matches of kind %s"
-msgstr ""
+msgstr "%s 유형의 일치에 대한 핸들러가 없음"
 
 #: cinder/openstack/common/processutils.py:127
 #, python-format
 msgid "Got unknown keyword args to utils.execute: %r"
-msgstr ""
+msgstr "utils.execute에 대해 알 수 없는 키워드 인수를 가져옴: %r"
 
 #: cinder/openstack/common/processutils.py:142
 #, python-format
 msgid "Running cmd (subprocess): %s"
-msgstr ""
+msgstr "cmd(하위 프로세스) 실행 중: %s"
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:448
 #, python-format
 msgid "Result was %s"
-msgstr ""
+msgstr "결과는 %s입니다."
 
 #: cinder/openstack/common/processutils.py:179
 #, python-format
 msgid "%r failed. Retrying."
-msgstr ""
+msgstr "%r 실패. 재시도 중입니다. "
 
 #: cinder/openstack/common/processutils.py:218
 #, python-format
 msgid "Running cmd (SSH): %s"
-msgstr ""
+msgstr "cmd(SSH) 실행 중: %s"
 
 #: cinder/openstack/common/processutils.py:220
 msgid "Environment not supported over SSH"
-msgstr ""
+msgstr "환경이 SSH를 통해 지원되지 않음"
 
 #: cinder/openstack/common/processutils.py:224
 msgid "process_input not supported over SSH"
-msgstr ""
+msgstr "process_input이 SSH를 통해 지원되지 않음"
 
 #: cinder/openstack/common/request_utils.py:66
 #, python-format
@@ -3547,7 +3639,7 @@ msgstr ""
 #: cinder/openstack/common/service.py:269
 #, python-format
 msgid "Caught %s, exiting"
-msgstr ""
+msgstr "%s 발견, 종료 중"
 
 #: cinder/openstack/common/service.py:187
 msgid "Exception during rpc cleanup."
@@ -3555,55 +3647,55 @@ msgstr ""
 
 #: cinder/openstack/common/service.py:238
 msgid "Parent process has died unexpectedly, exiting"
-msgstr ""
+msgstr "상위 프로세스가 예기치 않게 정지했습니다. 종료 중"
 
 #: cinder/openstack/common/service.py:275
 msgid "Unhandled exception"
-msgstr ""
+msgstr "처리되지 않은 예외"
 
 #: cinder/openstack/common/service.py:308
 msgid "Forking too fast, sleeping"
-msgstr ""
+msgstr "포크가 너무 빠름. 정지 중"
 
 #: cinder/openstack/common/service.py:327
 #, python-format
 msgid "Started child %d"
-msgstr ""
+msgstr "%d 하위를 시작했음"
 
 #: cinder/openstack/common/service.py:337
 #, python-format
 msgid "Starting %d workers"
-msgstr ""
+msgstr "%d 작업자 시작 중"
 
 #: cinder/openstack/common/service.py:354
 #, python-format
 msgid "Child %(pid)d killed by signal %(sig)d"
-msgstr ""
+msgstr "%(pid)d 하위가 %(sig)d 신호에 의해 강제 종료됨"
 
 #: cinder/openstack/common/service.py:358
 #, python-format
 msgid "Child %(pid)s exited with status %(code)d"
-msgstr ""
+msgstr "%(pid)s 하위가 %(code)d 상태와 함께 종료했음"
 
 #: cinder/openstack/common/service.py:362
 #, python-format
 msgid "pid %d not in child list"
-msgstr ""
+msgstr "pid %d이(가) 하위 목록에 없음"
 
 #: cinder/openstack/common/service.py:392
 #, python-format
 msgid "Caught %s, stopping children"
-msgstr ""
+msgstr "%s 발견, 하위 중지 중"
 
 #: cinder/openstack/common/service.py:410
 #, python-format
 msgid "Waiting on %d children to exit"
-msgstr ""
+msgstr "%d 하위에서 종료하기를 대기 중임"
 
 #: cinder/openstack/common/sslutils.py:98
 #, python-format
 msgid "Invalid SSL version : %s"
-msgstr ""
+msgstr "잘못된 SSL 버전 : %s"
 
 #: cinder/openstack/common/strutils.py:92
 #, python-format
@@ -3650,25 +3742,25 @@ msgstr ""
 
 #: cinder/openstack/common/db/exception.py:44
 msgid "Invalid Parameter: Unicode is not supported by the current database."
-msgstr ""
+msgstr "올바르지 않은 매개변수: Unicode는 현재 데이터베이스에서 지원되지 않습니다. "
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:487
 msgid "DB exception wrapped."
-msgstr ""
+msgstr "DB 예외가 랩핑되었습니다."
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:538
 #, python-format
 msgid "Got mysql server has gone away: %s"
-msgstr ""
+msgstr "확보된 mysql 서버가 사라졌음: %s"
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:610
 #, python-format
 msgid "SQL connection failed. %s attempts left."
-msgstr ""
+msgstr "SQL 연결에 실패했습니다. %s번의 시도가 남았습니다. "
 
 #: cinder/openstack/common/db/sqlalchemy/utils.py:33
 msgid "Sort key supplied was not valid."
-msgstr ""
+msgstr "제공되는 정렬 키가 올바르지 않습니다. "
 
 #: cinder/openstack/common/scheduler/filters/capabilities_filter.py:54
 #, python-format
@@ -3687,7 +3779,7 @@ msgstr ""
 #: cinder/openstack/common/scheduler/filters/ignore_attempted_hosts_filter.py:52
 #, python-format
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
-msgstr ""
+msgstr "호스트 %(host)s %(pass_msg)s.  이전에 시도된 호스트: %(hosts)s"
 
 #: cinder/scheduler/driver.py:69
 msgid "Must implement host_passes_filters"
@@ -3699,11 +3791,11 @@ msgstr ""
 
 #: cinder/scheduler/driver.py:78
 msgid "Must implement a fallback schedule"
-msgstr ""
+msgstr "대체 스케줄을 구현해야 함"
 
 #: cinder/scheduler/driver.py:82
 msgid "Must implement schedule_create_volume"
-msgstr ""
+msgstr "schedule_create_volume을 구현해야 함"
 
 #: cinder/scheduler/filter_scheduler.py:98
 #, python-format
@@ -3724,19 +3816,19 @@ msgstr ""
 
 #: cinder/scheduler/filter_scheduler.py:156
 msgid "Invalid value for 'scheduler_max_attempts', must be >=1"
-msgstr ""
+msgstr "'scheduler_max_attempts'에 대한 올바르지 않은 값, >= 1이어야 함"
 
 #: cinder/scheduler/filter_scheduler.py:174
 #, python-format
 msgid ""
 "Error scheduling %(volume_id)s from last vol-service: %(last_host)s : "
 "%(exc)s"
-msgstr ""
+msgstr "볼륨-서비스 %(last_host)s : %(exc)s에서 %(volume_id)s을(를) 스케줄링하는 중 오류 발생"
 
 #: cinder/scheduler/filter_scheduler.py:207
 #, python-format
 msgid "Exceeded max scheduling attempts %(max_attempts)d for volume %(volume_id)s"
-msgstr ""
+msgstr "%(volume_id)s 볼륨에 대한 최대 스케줄링 시도 횟수 %(max_attempts)d을(를) 초과함"
 
 #: cinder/scheduler/filter_scheduler.py:259
 #, python-format
@@ -3751,19 +3843,19 @@ msgstr ""
 #: cinder/scheduler/host_manager.py:266
 #, python-format
 msgid "Ignoring %(service_name)s service update from %(host)s"
-msgstr ""
+msgstr "%(host)s에서 %(service_name)s 서비스 업데이트 무시"
 
 #: cinder/scheduler/host_manager.py:271
 #, python-format
 msgid "Received %(service_name)s service update from %(host)s."
-msgstr ""
+msgstr "%(host)s에서 %(service_name)s 서비스 업데이트를 수신했습니다. "
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3792,12 +3884,12 @@ msgstr ""
 #: cinder/scheduler/manager.py:219
 #, python-format
 msgid "Failed to schedule_%(method)s: %(ex)s"
-msgstr ""
+msgstr "schedule_%(method)s 실패: %(ex)s"
 
 #: cinder/scheduler/scheduler_options.py:68
 #, python-format
 msgid "Could not stat scheduler options file %(filename)s: '%(e)s'"
-msgstr ""
+msgstr "스케줄러 옵션 파일 %(filename)s을(를) 시작할 수 없음: '%(e)s'"
 
 #: cinder/scheduler/scheduler_options.py:78
 #, python-format
@@ -3806,14 +3898,14 @@ msgstr ""
 
 #: cinder/scheduler/filters/capacity_filter.py:43
 msgid "Free capacity not set: volume node info collection broken."
-msgstr ""
+msgstr "여유 공간을 설정하지 않음: 볼륨 노드 정보 콜렉션이 중단되었습니다. "
 
 #: cinder/scheduler/filters/capacity_filter.py:57
 #, python-format
 msgid ""
 "Insufficient free space for volume creation (requested / avail): "
 "%(requested)s/%(available)s"
-msgstr ""
+msgstr "볼륨 작성에 필요한 여유 공간이 불충분합니다. (요청/사용 가능): %(requested)s/%(available)s"
 
 #: cinder/scheduler/flows/create_volume.py:53
 msgid "No volume_id provided to populate a request_spec from"
@@ -3832,9 +3924,9 @@ msgstr ""
 #: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:883
 #, python-format
 msgid "FAKE ISCSI: %s"
-msgstr ""
+msgstr "FAKE ISCSI: %s"
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3846,29 +3938,29 @@ msgstr ""
 #: cinder/tests/fake_driver.py:124 cinder/tests/fake_driver.py:129
 #, python-format
 msgid "LoggingVolumeDriver: %s"
-msgstr ""
+msgstr "LoggingVolumeDriver: %s"
 
 #: cinder/tests/fake_utils.py:70
 #, python-format
 msgid "Faking execution of cmd (subprocess): %s"
-msgstr ""
+msgstr "cmd (하위 프로세스) 하위 실행: %s"
 
 #: cinder/tests/fake_utils.py:78
 #, python-format
 msgid "Faked command matched %s"
-msgstr ""
+msgstr "허위 명령이 %s과(와) 일치함"
 
 #: cinder/tests/fake_utils.py:94
 #, python-format
 msgid "Faked command raised an exception %s"
-msgstr ""
+msgstr "허위 명령에서 %s 예외 발생"
 
 #: cinder/tests/fake_utils.py:97
 #, python-format
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
-msgstr ""
+msgstr "허위 명령에 대한 응답은 stdout='%(stdout)s' stderr='%(stderr)s'입니다."
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3878,7 +3970,7 @@ msgstr ""
 #: cinder/tests/test_ibm_xiv_ds8k.py:102
 #, python-format
 msgid "Volume not found for instance %(instance_id)s."
-msgstr ""
+msgstr "%(instance_id)s 인스턴스에 대한 볼륨을 찾을 수 없습니다. "
 
 #: cinder/tests/test_misc.py:58
 #, python-format
@@ -3886,6 +3978,8 @@ msgid ""
 "The following migrations are missing a downgrade:\n"
 "\t%s"
 msgstr ""
+"다음 마이그레이션이 다운그레이드를 누락했습니다.\n"
+"\t%s"
 
 #: cinder/tests/test_netapp.py:1327
 msgid "Error not a TypeError."
@@ -3900,49 +3994,55 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
 #: cinder/tests/test_storwize_svc.py:252
 #, python-format
 msgid "unrecognized argument %s"
-msgstr ""
+msgstr "인식되지 않는 인수 %s"
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
-msgstr ""
+msgstr "CLI 명령 실행: %s"
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
 " stdout: %(stdout)s\n"
 " stderr: %(stderr)s"
 msgstr ""
+"CLI 출력:\n"
+" stdout: %(stdout)s\n"
+" stderr: %(stderr)s"
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
 " stdout: %(out)s\n"
 " stderr: %(err)s"
 msgstr ""
+"CLI 예외 출력:\n"
+" stdout: %(out)s\n"
+" stderr: %(err)s"
 
 #: cinder/tests/test_volume_types.py:60
 #, python-format
 msgid "Given data: %s"
-msgstr ""
+msgstr "주어진 데이터: %s"
 
 #: cinder/tests/test_volume_types.py:61
 #, python-format
 msgid "Result data: %s"
-msgstr ""
+msgstr "결과 데이터: %s"
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
-msgstr ""
+msgstr "올바르지 않은 입력"
 
 #: cinder/tests/brick/test_brick_remotefs.py:99
 msgid "Unexpected call to _execute."
@@ -3955,7 +4055,7 @@ msgstr ""
 #: cinder/tests/integrated/test_login.py:29
 #, python-format
 msgid "volume: %s"
-msgstr ""
+msgstr "볼륨: %s"
 
 #: cinder/tests/integrated/api/client.py:34
 #, python-format
@@ -3964,47 +4064,50 @@ msgid ""
 "Status Code: %(_status)s\n"
 "Body: %(_body)s"
 msgstr ""
+"%(message)s\n"
+"상태 코드: %(_status)s\n"
+"본문: %(_body)s"
 
 #: cinder/tests/integrated/api/client.py:44
 msgid "Authentication error"
-msgstr ""
+msgstr "인증 오류"
 
 #: cinder/tests/integrated/api/client.py:52
 msgid "Authorization error"
-msgstr ""
+msgstr "권한 부여 오류"
 
 #: cinder/tests/integrated/api/client.py:60
 msgid "Item not found"
-msgstr ""
+msgstr "항목을 찾을 수 없음"
 
 #: cinder/tests/integrated/api/client.py:97
 #, python-format
 msgid "Doing %(method)s on %(relative_url)s"
-msgstr ""
+msgstr "%(relative_url)s에서 %(method)s 수행 중"
 
 #: cinder/tests/integrated/api/client.py:100
 #, python-format
 msgid "Body: %s"
-msgstr ""
+msgstr "본문: %s"
 
 #: cinder/tests/integrated/api/client.py:124
 #, python-format
 msgid "%(auth_uri)s => code %(http_status)s"
-msgstr ""
+msgstr "%(auth_uri)s => 코드 %(http_status)s"
 
 #: cinder/tests/integrated/api/client.py:147
 #, python-format
 msgid "%(relative_uri)s => code %(http_status)s"
-msgstr ""
+msgstr "%(relative_uri)s => 코드 %(http_status)s"
 
 #: cinder/tests/integrated/api/client.py:158
 msgid "Unexpected status code"
-msgstr ""
+msgstr "예기치 않은 상태 코드"
 
 #: cinder/tests/integrated/api/client.py:165
 #, python-format
 msgid "Decoding JSON: %s"
-msgstr ""
+msgstr "JSON 디코드: %s"
 
 #: cinder/tests/zonemanager/test_brcd_fc_zone_driver.py:124
 #, python-format
@@ -4042,7 +4145,7 @@ msgstr ""
 
 #: cinder/transfer/api.py:102 cinder/volume/api.py:350
 msgid "status must be available"
-msgstr ""
+msgstr "상태가 사용 가능해야 함"
 
 #: cinder/transfer/api.py:119
 #, python-format
@@ -4060,6 +4163,8 @@ msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG volume "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
+"%(s_pid)s에 대한 할당량을 초과하여 %(s_size)sG의 볼륨을 작성하려고 시도함(%(d_quota)dG 중 "
+"%(d_consumed)dG는 이미 사용됨)"
 
 #: cinder/transfer/api.py:182
 #, python-format
@@ -4094,7 +4199,7 @@ msgstr ""
 
 #: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
-msgstr ""
+msgstr "볼륨 삭제를 위해 할당량을 업데이트하는 데 실패함"
 
 #: cinder/volume/api.py:228
 #, python-format
@@ -4108,17 +4213,17 @@ msgstr ""
 #: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
-msgstr ""
+msgstr "볼륨에 아직 %d 종속 스냅샷이 있음"
 
 #: cinder/volume/api.py:293 cinder/volume/api.py:333
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
-msgstr ""
+msgstr "검색: %s"
 
 #: cinder/volume/api.py:353
 msgid "already attached"
-msgstr ""
+msgstr "이미 첨부되었음"
 
 #: cinder/volume/api.py:360
 msgid "status must be in-use to detach"
@@ -4126,7 +4231,7 @@ msgstr ""
 
 #: cinder/volume/api.py:371
 msgid "Volume status must be available to reserve"
-msgstr ""
+msgstr "볼륨 상태는 예약 가능이어야 함"
 
 #: cinder/volume/api.py:447
 msgid "Snapshot cannot be created while volume is migrating"
@@ -4134,7 +4239,7 @@ msgstr ""
 
 #: cinder/volume/api.py:451
 msgid "must be available"
-msgstr ""
+msgstr "사용 가능해야 함"
 
 #: cinder/volume/api.py:473
 #, python-format
@@ -4142,37 +4247,39 @@ msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
+"%(s_pid)s에 대한 할당량을 초과하여 %(s_size)sG의 스냅샷을 작성하려고 시도함(%(d_quota)dG 중 "
+"%(d_consumed)dG는 이미 사용됨)"
 
 #: cinder/volume/api.py:485
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
-msgstr ""
+msgstr "%(s_pid)s에 대한 할당량을 초과하여 스냅샷을 작성하려고 시도함(%(d_consumed)dG 스냅샷이 이미 사용됨)"
 
 #: cinder/volume/api.py:536
 msgid "Volume Snapshot status must be available or error"
-msgstr ""
+msgstr "볼륨 스냅샷 상태가 사용 가능 또는 오류여야 함"
 
 #: cinder/volume/api.py:564 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
-msgstr ""
+msgstr "메타데이터 특성 키 공백"
 
 #: cinder/volume/api.py:568
 msgid "Metadata property key greater than 255 characters"
-msgstr ""
+msgstr "메타데이터 특성 키가 255자보다 큼"
 
 #: cinder/volume/api.py:572
 msgid "Metadata property value greater than 255 characters"
-msgstr ""
+msgstr "메타데이터 특성 값이 255자보다 큼"
 
 #: cinder/volume/api.py:703 cinder/volume/api.py:777
 msgid "Volume status must be available/in-use."
-msgstr ""
+msgstr "볼륨 상태가 사용 가능/사용 중이어야 합니다. "
 
 #: cinder/volume/api.py:706
 msgid "Volume status is in-use."
-msgstr ""
+msgstr "볼륨 상태가 사용 중입니다. "
 
 #: cinder/volume/api.py:735
 msgid "Volume status must be available to extend."
@@ -4200,73 +4307,73 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
 #: cinder/volume/driver.py:195 cinder/volume/drivers/netapp/nfs.py:176
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
-msgstr ""
+msgstr "실패한 실행에서 복구 중입니다. 번호 %s 시도"
 
 #: cinder/volume/driver.py:278
 #, python-format
@@ -4286,27 +4393,27 @@ msgstr ""
 #: cinder/volume/driver.py:335
 #, python-format
 msgid "copy_image_to_volume %s."
-msgstr ""
+msgstr "copy_image_to_volume %s."
 
 #: cinder/volume/driver.py:352
 #, python-format
 msgid "copy_volume_to_image %s."
-msgstr ""
+msgstr "copy_volume_to_image %s."
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4428,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
-msgstr ""
+msgstr "%s 볼륨: 내보내기 제거 중"
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,9 +4462,9 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
-msgstr ""
+msgstr "ISCSI provider_location이 저장되지 않음, 발견 사용 중"
 
 #: cinder/volume/driver.py:652
 #, python-format
@@ -4372,25 +4479,25 @@ msgstr ""
 #: cinder/volume/driver.py:701
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
-msgstr ""
+msgstr "%s 볼륨에 대한 iSCSI 내보내기를 찾을 수 없음"
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
-msgstr ""
+msgstr "ISCSI 발견: %s 발견"
 
 #: cinder/volume/driver.py:802
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,37 +4505,44 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
+msgstr "드라이버가 initialize_connection을 구현해야 함"
+
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
 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 ""
+msgstr "remove_export를 건너뛰고 있습니다. 볼륨에 대해 프로비저닝된 iscsi_target이 없음: %s"
 
 #: cinder/volume/iscsi.py:80
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
-msgstr ""
+msgstr "remove_export를 건너뜀. 현재 %s 볼륨에 대한 iscsi_target이 내보내지지 않았습니다. "
 
 #: cinder/volume/iscsi.py:100
 msgid "Detected inconsistency in provider_location id"
-msgstr ""
+msgstr "provider_location id에서 불일치가 발견됨"
 
 #: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:572
 #: cinder/volume/drivers/huawei/rest_common.py:1225
 #, python-format
 msgid "%s"
-msgstr ""
+msgstr "%s"
 
 #: cinder/volume/iscsi.py:184
 #, python-format
 msgid "Symbolic link %s not found"
-msgstr ""
+msgstr "기호 링크 %s(을) 찾을 수 없음"
 
 #: cinder/volume/iscsi.py:251
 #, python-format
@@ -4438,287 +4552,281 @@ msgstr ""
 #: cinder/volume/iscsi.py:252
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
+msgstr "ensure_export를 건너뜁니다. %s 볼륨에 대한 iscsi_target을 프로비저닝하지 않습니다. "
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
-msgstr ""
+msgstr "드라이버 경로 %s이(가) 더 이상 사용되지 않습니다. 새 경로로 구성을 업데이트하십시오. "
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
-msgstr ""
+msgstr "%s 볼륨을 다시 내보내는 중"
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
-msgstr ""
+msgstr "볼륨 %s: 내보내기를 건너뛰는 중"
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
-msgstr ""
+msgstr "진행 중인 삭제 조작 재개"
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
-msgstr ""
+msgstr "%s 볼륨에서 삭제 재개"
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
-msgstr ""
+msgstr "%s 볼륨: 삭제 중"
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
-msgstr ""
+msgstr "볼륨이 이 노드에 대해 로컬이 아님"
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
-msgstr ""
+msgstr "볼륨을 삭제하는 중 사용법을 업데이트하지 못함"
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
-msgstr ""
+msgstr "%s 볼륨: 성공적으로 삭제됨"
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
-msgstr ""
+msgstr "%s 스냅샷: 작성"
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
-msgstr ""
+msgstr "%s 스냅샷: 성공적으로 작성됨"
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
-msgstr ""
+msgstr "%s 스냅샷: 삭제 중"
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
-msgstr ""
+msgstr "스냅샷을 삭제하는 중 사용법을 업데이트하지 못함"
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
-msgstr ""
+msgstr "%s 스냅샷: 성공적으로 삭제됨"
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
-msgstr ""
+msgstr "다른 인스턴스에서 연결하는 중"
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
-msgstr ""
+msgstr "%(volume_id)s 볼륨을 %(image_id)s 이미지로 업로드함"
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
-msgstr ""
+msgstr "볼륨 상태 업데이트"
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
-msgstr ""
+msgstr "{%s} 알림 수신"
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4734,13 +4842,13 @@ msgstr ""
 #: cinder/volume/volume_types.py:43
 #, python-format
 msgid "DB error: %s"
-msgstr ""
+msgstr "DB 오류: %s"
 
 #: cinder/volume/qos_specs.py:123 cinder/volume/qos_specs.py:140
 #: cinder/volume/qos_specs.py:272 cinder/volume/volume_types.py:52
 #: cinder/volume/volume_types.py:99
 msgid "id cannot be None"
-msgstr ""
+msgstr "id는 None일 수 없음"
 
 #: cinder/volume/qos_specs.py:156
 #, python-format
@@ -4771,32 +4879,32 @@ msgstr ""
 
 #: cinder/volume/qos_specs.py:284 cinder/volume/volume_types.py:111
 msgid "name cannot be None"
-msgstr ""
+msgstr "이름은 None일 수 없음"
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
-msgstr ""
+msgstr "%s 볼륨에서 보안 삭제 수행"
 
 #: cinder/volume/volume_types.py:130
 #, python-format
 msgid ""
 "Default volume type is not found, please check default_volume_type "
 "config: %s"
-msgstr ""
+msgstr "기본 볼륨 유형을 찾을 수 없습니다. default_volume_type config %s을(를) 확인하십시오. "
 
 #: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:284
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
-msgstr ""
+msgstr "%s 볼륨의 복제 작성"
 
 #: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
@@ -4906,11 +5014,11 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
-msgstr ""
+msgstr "SSH 명령 실행 중 오류: %s"
 
 #: cinder/volume/drivers/eqlx.py:282
 #, python-format
@@ -4986,219 +5094,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
-msgstr ""
+msgstr "Gluster config 파일이 구성되지 않음(%s)"
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
-msgstr ""
+msgstr "Gluster config 파일이 %(config)s에 없음"
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
-msgstr ""
+msgstr "mount.glusterfs가 설치되지 않음"
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
-msgstr ""
+msgstr "%s(으)로 캐스트"
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
-msgstr ""
+msgstr "%s 볼륨에 지정된 provider_location이 없습니다. 건너뜁니다. "
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
-msgstr ""
+msgstr "%s 마운트 중 예외"
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5220,7 +5328,7 @@ msgstr ""
 #: cinder/volume/drivers/lvm.py:246
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
-msgstr ""
+msgstr "%s 스냅샷을 찾을 수 없습니다. 삭제 조작을 건너뜁니다. "
 
 #: cinder/volume/drivers/lvm.py:347
 #, python-format
@@ -5265,17 +5373,17 @@ msgstr ""
 #: cinder/volume/drivers/nfs.py:380
 #, python-format
 msgid "%s is already mounted"
-msgstr ""
+msgstr "%s이(가) 이미 마운트되었음"
 
 #: cinder/volume/drivers/nfs.py:432
 #, python-format
 msgid "There's no NFS config file configured (%s)"
-msgstr ""
+msgstr "구성된 NFS config 파일이 없음(%s)"
 
 #: cinder/volume/drivers/nfs.py:437
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
-msgstr ""
+msgstr "NFS config 파일이 %(config)s에 없음"
 
 #: cinder/volume/drivers/nfs.py:442
 #, python-format
@@ -5307,174 +5415,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
-msgstr ""
+msgstr "볼륨 상태를 새로 고치는 중 오류 발생"
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
-msgstr ""
+msgstr "rbd에 저장되지 않음"
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
-msgstr ""
+msgstr "비어 있는 구성요소"
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
-msgstr ""
+msgstr "rbd 스냅샷이 아님"
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
-msgstr ""
+msgstr "%s이(가) 다른 ceph 클러스터에 있음"
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5482,39 +5590,39 @@ msgstr ""
 
 #: cinder/volume/drivers/scality.py:67
 msgid "Value required for 'scality_sofs_config'"
-msgstr ""
+msgstr "'scality_sofs_config'에 필요한 값"
 
 #: cinder/volume/drivers/scality.py:78
 #, python-format
 msgid "Cannot access 'scality_sofs_config': %s"
-msgstr ""
+msgstr "'scality_sofs_config'에 액세스할 수 없음: %s"
 
 #: cinder/volume/drivers/scality.py:84
 msgid "Cannot execute /sbin/mount.sofs"
-msgstr ""
+msgstr "/sbin/mount.sofs를 실행할 수 없음"
 
 #: cinder/volume/drivers/scality.py:105
 msgid "Cannot mount Scality SOFS, check syslog for errors"
-msgstr ""
+msgstr "스케일 SOFS를 마운트할 수 없음. syslog에서 오류 확인"
 
 #: cinder/volume/drivers/scality.py:139
 #, python-format
 msgid "Cannot find volume dir for Scality SOFS at '%s'"
-msgstr ""
+msgstr "'%s'에서 Scality SOFS에 대한 볼륨 dir을 찾을 수 없음"
 
 #: cinder/volume/drivers/sheepdog.py:59
 #, python-format
 msgid "Sheepdog is not working: %s"
-msgstr ""
+msgstr "Sheepdog이 작업 중이 아님: %s"
 
 #: cinder/volume/drivers/sheepdog.py:64
 msgid "Sheepdog is not working"
-msgstr ""
+msgstr "Sheepdog이 작업 중이 아님"
 
 #: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
-msgstr ""
+msgstr "SolidFire API 호출의 페이로드: %s"
 
 #: cinder/volume/drivers/solidfire.py:149
 #, python-format
@@ -5543,53 +5651,53 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
-msgstr ""
+msgstr "json.loads() 호출에서 예외 발생: %s"
 
 #: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
-msgstr ""
+msgstr "SolidFire API 호출 결과: %s"
 
 #: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
-msgstr ""
+msgstr "복제 조작 발생: %s"
 
 #: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
-msgstr ""
+msgstr "스냅샷을 재시도하기 전에 특별한 조작을 기다리십시오. %s"
 
 #: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
-msgstr ""
+msgstr "xDBVersionMismatch가 감지되었습니다. 5번 중 %s번을 시도하십시오. "
 
 #: 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 ""
+msgstr "API 응답: %s"
 
 #: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
-msgstr ""
+msgstr "solidfire 계정 발견: %s"
 
 #: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
-msgstr ""
+msgstr "solidfire 계정: %s이(가) 존재하지 않으며, 작성하십시오. "
 
 #: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
-msgstr ""
+msgstr "%s get_by_account!에서 SolidFire-ID 볼륨을 검색하지 못했습니다. "
 
 #: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
-msgstr ""
+msgstr "복제에서 모델 업데이트를 가져오지 못함"
 
 #: cinder/volume/drivers/solidfire.py:408
 #, python-format
@@ -5599,7 +5707,7 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
-msgstr ""
+msgstr "%s을(를) 사용하여 둘 이상의 유효한 프리세트가 감지되었습니다. "
 
 #: cinder/volume/drivers/solidfire.py:458
 #, python-format
@@ -5609,26 +5717,26 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
-msgstr ""
+msgstr "SolidFire volumeID %(sfid)s이(가) cinder ID %(uuid)s(으)로 맵핑되었습니다. "
 
 #: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
-msgstr ""
+msgstr "SF 클러스터에서 %s 볼륨을 찾을 수 없습니다. "
 
 #: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
-msgstr ""
+msgstr "id: %(uuid)s에 맵핑된 %(count)s개의 볼륨을 찾을 수 없습니다. "
 
 #: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
-msgstr ""
+msgstr "SolidFire delete_volume 입력..."
 
 #: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
-msgstr ""
+msgstr "SolidFire 클러스터에서 볼륨 ID %s에 대한 계정을 찾을 수 없습니다!"
 
 #: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
@@ -5641,23 +5749,23 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
-msgstr ""
+msgstr "SolidFire 클러스터에서 볼륨 ID %s을(를) 찾을 수 없습니다!"
 
 #: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
-msgstr ""
+msgstr "SolidFire delete_volume을 나가는 중"
 
 #: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
-msgstr ""
+msgstr "SolidFire ensure_export 실행 중..."
 
 #: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
-msgstr ""
+msgstr "SolidFire create_export 실행 중..."
 
 #: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
@@ -5669,30 +5777,30 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
-msgstr ""
+msgstr "클러스터 상태 정보 업데이트"
 
 #: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
-msgstr ""
+msgstr "업데이트된 상태를 가져오지 못함"
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
 #: cinder/volume/drivers/zadara.py:236
 #, python-format
 msgid "Sending %(method)s to %(url)s. Body \"%(body)s\""
-msgstr ""
+msgstr "%(method)s을(를) %(url)s로 보냅니다. 본문 \"%(body)s\""
 
 #: cinder/volume/drivers/zadara.py:260
 #, python-format
 msgid "Operation completed. %(data)s"
-msgstr ""
+msgstr "작업이 완료되었습니다. %(data)s"
 
 #: cinder/volume/drivers/zadara.py:357
 #, python-format
@@ -5702,7 +5810,7 @@ msgstr ""
 #: cinder/volume/drivers/zadara.py:408 cinder/volume/drivers/zadara.py:531
 #, python-format
 msgid "Volume %(name)s could not be found. It might be already deleted"
-msgstr ""
+msgstr "%(name)s 볼륨을 찾을 수 없습니다. 이미 삭제되었을 수 있습니다. "
 
 #: cinder/volume/drivers/zadara.py:438
 #, python-format
@@ -5743,7 +5851,7 @@ msgstr ""
 #: cinder/volume/drivers/zadara.py:614
 #, python-format
 msgid "Attach properties: %(properties)s"
-msgstr ""
+msgstr "특성 첨부: %(properties)s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:125
 #, python-format
@@ -5751,22 +5859,22 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
-msgstr ""
+msgstr "%s 볼륨에 대한 iSCSI 내보내기를 찾을 수 없음"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
-msgstr ""
+msgstr "%s 볼륨에 대한 디바이스 번호를 찾을 수 없음"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
-msgstr ""
+msgstr "찾은 iSCSI 엔드포인트: %s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:209
 #, python-format
@@ -5782,29 +5890,29 @@ msgstr ""
 msgid ""
 "Module PyWBEM not installed.  Install PyWBEM using the python-pywbem "
 "package."
-msgstr ""
+msgstr "PyWBEM 모듈이 설치되지 않았습니다. python-pywbem 패키지를 사용하여 PyWBEM을 설치하십시오. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:82
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:125
 msgid "Entering create_volume."
-msgstr ""
+msgstr "create_volume 입력."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:86
 #, python-format
 msgid "Create Volume: %(volume)s  Size: %(size)lu"
-msgstr ""
+msgstr "볼륨: %(volume)s 크기: %(size)lu 작성"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:94
 #, python-format
 msgid "Create Volume: %(volume)s  Storage type: %(storage_type)s"
-msgstr ""
+msgstr "볼륨: %(volume)s 스토리지 유형: %(storage_type)s 작성"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:101
 #, python-format
 msgid ""
 "Create Volume: %(volume)s  Pool: %(pool)s  Storage System: "
 "%(storage_system)s"
-msgstr ""
+msgstr "볼륨: %(volume)s 풀: %(pool)s 스토리지 시스템: %(storage_system)s 작성"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:110
 #, python-format
@@ -5812,6 +5920,8 @@ msgid ""
 "Error Create Volume: %(volumename)s. Storage Configuration Service not "
 "found for pool %(storage_type)s."
 msgstr ""
+"%(volumename)s 볼륨 작성에 오류가 발생했습니다. %(storage_type)s 풀에 대한 스토리지 구성 서비스를 찾을 "
+"수 없습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:120
 #, python-format
@@ -5824,14 +5934,14 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_smis_common.py:136
 #, python-format
 msgid "Create Volume: %(volumename)s  Return code: %(rc)lu"
-msgstr ""
+msgstr "볼륨: %(volumename)s 리턴 코드: %(rc)lu 작성"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:143
 #, python-format
 msgid ""
 "Error Create Volume: %(volumename)s.  Return code: %(rc)lu.  Error: "
 "%(error)s"
-msgstr ""
+msgstr "%(volumename)s 볼륨 작성에 오류 발생. 리턴 코드: %(rc)lu. 오류: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:164
 #, python-format
@@ -5843,14 +5953,14 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_smis_common.py:176
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:348
 msgid "Entering create_volume_from_snapshot."
-msgstr ""
+msgstr "입력: create_volume_from_snapshot"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:181
 #, python-format
 msgid ""
 "Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s"
-msgstr ""
+msgstr "스냅샷에서 볼륨 작성: 볼륨: %(volumename)s 스냅샷: %(snapshotname)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:191
 #, python-format
@@ -5859,6 +5969,8 @@ msgid ""
 "%(snapshotname)s  Snapshot Instance: %(snapshotinstance)s  Storage "
 "System: %(storage_system)s."
 msgstr ""
+"스냅샷에서 볼륨 작성: 볼륨: %(volumename)s 스냅샷: %(snapshotname)s 스냅샷 인스턴스: "
+"%(snapshotinstance)s 스토리지 시스템: %(storage_system)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:201
 #, python-format
@@ -5866,6 +5978,8 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s. Create Volume from Snapshot is NOT supported on VMAX."
 msgstr ""
+"스냅샷에서 볼륨 작성 오류: 볼륨: %(volumename)s  스냅샷: %(snapshotname)s. 스냅샷에서의 볼륨 작성은 "
+"VMAX에서 지원되지 않습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:212
 #, python-format
@@ -5874,6 +5988,8 @@ msgid ""
 "%(snapshotname)s. Cannot find Replication Service to create volume from "
 "snapshot."
 msgstr ""
+"스냅샷에서 볼륨 작성 오류: 볼륨: %(volumename)s  스냅샷: %(snapshotname)s. 스냅샷에서 볼륨을 작성하기"
+" 위한 복제 서비스를 찾을 수 없습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:221
 #, python-format
@@ -5883,6 +5999,9 @@ msgid ""
 "%(service)s  ElementName: %(elementname)s  SyncType: 8  SourceElement: "
 "%(sourceelement)s"
 msgstr ""
+"스냅샷에서 볼륨 작성: 볼륨: %(volumename)s  스냅샷: %(snapshotname)s  메소드: "
+"CreateElementReplica  복제 서비스: %(service)s  요소 이름: %(elementname)s  동기화 "
+"유형: 8  소스 요소: %(sourceelement)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:242
 #, python-format
@@ -5890,6 +6009,8 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  "
 "Snapshot:%(snapshotname)s.  Return code: %(rc)lu.Error: %(error)s"
 msgstr ""
+"스냅샷에서 볼륨 작성 오류: 볼륨: %(volumename)s  스냅샷: %(snapshotname)s.  리턴 코드: "
+"%(rc)lu. 오류: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:268
 #, python-format
@@ -5898,6 +6019,8 @@ msgid ""
 "%(snapshotname)s.  Successfully clone volume from snapshot.  Finding the "
 "clone relationship."
 msgstr ""
+"스냅샷에서 볼륨 작성: 볼륨: %(volumename)s  스냅샷: %(snapshotname)s. 스냅샷에서 볼륨을 복제했습니다."
+" 복제 관계를 찾습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:280
 #, python-format
@@ -5907,13 +6030,16 @@ msgid ""
 "ModifyReplicaSynchronization ReplicationService: %(service)s  Operation: "
 "8  Synchronization: %(sync_name)s"
 msgstr ""
+"스냅샷에서 볼륨 작성: 볼륨: %(volumename)s  스냅샷: %(snapshotname)s. 복제 관계를 제거하십시오. "
+"메소드: ModifyReplicaSynchronization 복제 서비스: %(service)s  조작: 8  동기화: "
+"%(sync_name)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:296
 #, python-format
 msgid ""
 "Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu"
-msgstr ""
+msgstr "스냅샷에서 볼륨 작성: 볼륨: %(volumename)s 스냅샷: %(snapshotname)s 리턴 코드: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:305
 #, python-format
@@ -5921,6 +6047,8 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s.  Return code: %(rc)lu.  Error: %(error)s"
 msgstr ""
+"스냅샷에서 볼륨 작성 오류: 볼륨: %(volumename)s  스냅샷: %(snapshotname)s.  리턴 코드: "
+"%(rc)lu. 오류: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:317
 #, python-format
@@ -5928,17 +6056,19 @@ msgid ""
 "Leaving create_volume_from_snapshot: Volume: %(volumename)s Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu."
 msgstr ""
+"남김: create_volume_from_snapshot: 볼륨: %(volumename)s 스냅샷: %(snapshotname)s"
+"  리턴 코드: %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:328
 msgid "Entering create_cloned_volume."
-msgstr ""
+msgstr "입력: create_cloned_volume."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:333
 #, python-format
 msgid ""
 "Create a Clone from Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s"
-msgstr ""
+msgstr "볼륨에서 복제 작성: 볼륨: %(volumename)s  소스 볼륨: %(srcname)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:343
 #, python-format
@@ -5946,6 +6076,8 @@ msgid ""
 "Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
 "  Source Instance: %(src_instance)s  Storage System: %(storage_system)s."
 msgstr ""
+"복제된 볼륨 작성: 볼륨: %(volumename)s 소스 볼륨: %(srcname)s 소스 인스턴스: "
+"%(src_instance)s 스토리지 시스템: %(storage_system)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:353
 #, python-format
@@ -5953,6 +6085,8 @@ msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s. Cannot find Replication Service to create cloned volume."
 msgstr ""
+"복제된 볼륨 작성 오류: 볼륨: %(volumename)s  소스 볼륨: %(srcname)s. 복제된 볼륨을 작성할 복제 서비스를"
+" 찾을 수 없습니다."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:362
 #, python-format
@@ -5962,6 +6096,9 @@ msgid ""
 "ElementName: %(elementname)s  SyncType: 8  SourceElement: "
 "%(sourceelement)s"
 msgstr ""
+"복제 볼륨 작성: 볼륨: %(volumename)s  스냅샷: %(srcname)s  메소드: CreateElementReplica"
+"  복제 서비스: %(service)s  요소 이름: %(elementname)s  동기화 유형: 8  소스 요소: "
+"%(sourceelement)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:383
 #, python-format
@@ -5969,6 +6106,8 @@ msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source "
 "Volume:%(srcname)s.  Return code: %(rc)lu.Error: %(error)s"
 msgstr ""
+"복제 볼륨 작성 오류: 볼륨: %(volumename)s  소스 볼륨: %(srcname)s.  리턴 코드: %(rc)lu. 오류:"
+" %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:409
 #, python-format
@@ -5977,6 +6116,8 @@ msgid ""
 "  Successfully cloned volume from source volume.  Finding the clone "
 "relationship."
 msgstr ""
+"복제된 볼륨 작성: 볼륨: %(volumename)s  소스 볼륨: %(srcname)s.  소스 볼륨에서 볼륨을 복제했습니다. "
+"클론 관계를 찾습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:421
 #, python-format
@@ -5986,13 +6127,16 @@ msgid ""
 "ReplicationService: %(service)s  Operation: 8  Synchronization: "
 "%(sync_name)s"
 msgstr ""
+"복제된 볼륨 작성: 볼륨: %(volumename)s  소스 볼륨: %(srcname)s. 복제 관계를 제거하십시오. 메소드: "
+"ModifyReplicaSynchronization 복제 서비스: %(service)s  조작: 8  동기화: "
+"%(sync_name)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:437
 #, python-format
 msgid ""
 "Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
 "  Return code: %(rc)lu"
-msgstr ""
+msgstr "복제 볼륨 작성: 볼륨: %(volumename)s  소스 볼륨: %(srcname)s  리턴 코드: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:446
 #, python-format
@@ -6000,6 +6144,8 @@ msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s.  Return code: %(rc)lu.  Error: %(error)s"
 msgstr ""
+"복제 볼륨 작성 오류: 볼륨: %(volumename)s  소스 볼륨: %(srcname)s.  리턴 코드: %(rc)lu. 오류:"
+" %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:458
 #, python-format
@@ -6007,33 +6153,35 @@ msgid ""
 "Leaving create_cloned_volume: Volume: %(volumename)s Source Volume: "
 "%(srcname)s  Return code: %(rc)lu."
 msgstr ""
+"Leaving create_cloned_volume: 볼륨: %(volumename)s 소스 볼륨: %(srcname)s  리턴 "
+"코드: %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:469
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:178
 msgid "Entering delete_volume."
-msgstr ""
+msgstr "입력: delete_volume."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:471
 #, python-format
 msgid "Delete Volume: %(volume)s"
-msgstr ""
+msgstr "볼륨 삭제: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:478
 #, python-format
 msgid "Volume %(name)s not found on the array. No volume to delete."
-msgstr ""
+msgstr "배열에서 %(name)s 볼륨을 찾을 수 없습니다. 삭제할 볼륨이 없습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:488
 #, python-format
 msgid ""
 "Error Delete Volume: %(volumename)s. Storage Configuration Service not "
 "found."
-msgstr ""
+msgstr "볼륨 삭제 오류: %(volumename)s. 스토리지 구성 서비스를 찾을 수 없습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:496
 #, python-format
 msgid "Delete Volume: %(name)s  DeviceID: %(deviceid)s"
-msgstr ""
+msgstr "볼륨 삭제: %(name)s  디바이스 ID: %(deviceid)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:500
 #, python-format
@@ -6041,42 +6189,44 @@ msgid ""
 "Delete Volume: %(name)s  Method: EMCReturnToStoragePool ConfigServic: "
 "%(service)s  TheElement: %(vol_instance)s"
 msgstr ""
+"볼륨 삭제: %(name)s  메소드: EMCReturnToStoragePool 구성 서비스: %(service)s  요소: "
+"%(vol_instance)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:514
 #, python-format
 msgid ""
 "Error Delete Volume: %(volumename)s.  Return code: %(rc)lu.  Error: "
 "%(error)s"
-msgstr ""
+msgstr "볼륨 삭제 오류: %(volumename)s.  리턴 코드: %(rc)lu.  오류: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:523
 #, python-format
 msgid "Leaving delete_volume: %(volumename)s  Return code: %(rc)lu"
-msgstr ""
+msgstr "남김: delete_volume: %(volumename)s. 리턴 코드: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:530
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:275
 msgid "Entering create_snapshot."
-msgstr ""
+msgstr "입력: create_snapshot."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:534
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:278
 #, python-format
 msgid "Create snapshot: %(snapshot)s: volume: %(volume)s"
-msgstr ""
+msgstr "스냅샷 작성: %(snapshot)s: 볼륨: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:544
 #: cinder/volume/drivers/emc/emc_smis_common.py:972
 #, python-format
 msgid "Device ID: %(deviceid)s: Storage System: %(storagesystem)s"
-msgstr ""
+msgstr "디바이스 ID: %(deviceid)s: 스토리지 시스템: %(storagesystem)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:551
 #: cinder/volume/drivers/emc/emc_smis_common.py:553
 #: cinder/volume/drivers/emc/emc_smis_common.py:639
 #, python-format
 msgid "Cannot find Replication Service to create snapshot for volume %s."
-msgstr ""
+msgstr "%s 볼륨에 대한 스냅샷을 작성할 복제 서비스를 찾을 수 없습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:558
 #, python-format
@@ -6085,13 +6235,16 @@ msgid ""
 "Source: %(volume)s  Replication Service: %(service)s  ElementName: "
 "%(elementname)s  Sync Type: 7  SourceElement: %(sourceelement)s."
 msgstr ""
+"스냅샷 작성: 메소드: CreateElementReplica: 대상: %(snapshot)s  소스: %(volume)s  복제 "
+"서비스: %(service)s  요소 이름: %(elementname)s  동기화 유형: 7  소스 요소: "
+"%(sourceelement)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:574
 #, python-format
 msgid ""
 "Create Snapshot: Volume: %(volumename)s  Snapshot: %(snapshotname)s  "
 "Return code: %(rc)lu"
-msgstr ""
+msgstr "스냅샷 작성: 볼륨: %(volumename)s  스냅샷: %(snapshotname)s  리턴 코드: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:583
 #, python-format
@@ -6105,32 +6258,32 @@ msgstr ""
 msgid ""
 "Leaving create_snapshot: Snapshot: %(snapshot)s Volume: %(volume)s  "
 "Return code: %(rc)lu."
-msgstr ""
+msgstr "남김: create_snapshot: 스냅샷: %(snapshot)s 볼륨: %(volume)s  리턴 코드: %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:613
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:302
 msgid "Entering delete_snapshot."
-msgstr ""
+msgstr "입력: delete_snapshot."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:617
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:306
 #, python-format
 msgid "Delete Snapshot: %(snapshot)s: volume: %(volume)s"
-msgstr ""
+msgstr "스냅샷 삭제: %(snapshot)s: 볼륨: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:623
 #, python-format
 msgid ""
 "Delete Snapshot: %(snapshot)s: volume: %(volume)s. Finding "
 "StorageSychronization_SV_SV."
-msgstr ""
+msgstr "스냅샷 삭제: %(snapshot)s: 볼륨: %(volume)s. StorageSychronization_SV_SV 찾기."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:631
 #, python-format
 msgid ""
 "Snapshot: %(snapshot)s: volume: %(volume)s not found on the array. No "
 "snapshot to delete."
-msgstr ""
+msgstr "스냅샷: %(snapshot)s: 배열에서 %(volume)s 볼륨을 찾을 수 없습니다. 삭제할 스냅샷이 없습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:646
 #, python-format
@@ -6139,13 +6292,16 @@ msgid ""
 "ModifyReplicaSynchronization:  Replication Service: %(service)s  "
 "Operation: 19  Synchronization: %(sync_name)s."
 msgstr ""
+"스냅샷 삭제: 대상: %(snapshot)s  소스: %(volume)s.  메소드: "
+"ModifyReplicaSynchronization:  복제 서비스: %(service)s  조작: 19  동기화: "
+"%(sync_name)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:662
 #, python-format
 msgid ""
 "Delete Snapshot: Volume: %(volumename)s  Snapshot: %(snapshotname)s  "
 "Return code: %(rc)lu"
-msgstr ""
+msgstr "스냅샷 삭제: 볼륨: %(volumename)s  스냅샷: %(snapshotname)s  리턴 코드: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:671
 #, python-format
@@ -6153,6 +6309,8 @@ msgid ""
 "Error Delete Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s. Return code: %(rc)lu. Error: %(error)s"
 msgstr ""
+"스냅샷 삭제 오류: 볼륨: %(volumename)s  스냅샷: %(snapshotname)s.  리턴 코드: %(rc)lu. "
+"오류: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:696
 #: cinder/volume/drivers/emc/emc_smis_common.py:711
@@ -6180,6 +6338,8 @@ msgid ""
 "Leaving delete_snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu."
 msgstr ""
+"남김: delete_snapshot: 볼륨: %(volumename)s  스냅샷: %(snapshotname)s  리턴 코드: "
+"%(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:745
 #, python-format
@@ -6187,21 +6347,23 @@ msgid ""
 "ExposePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(lun_name)s"
 "  InitiatorPortIDs: %(initiator)s  DeviceAccesses: 2"
 msgstr ""
+"ExposePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(lun_name)s"
+"  InitiatorPortIDs: %(initiator)s  DeviceAccesses: 2"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:760
 #, python-format
 msgid "ExposePaths parameter LunMaskingSCSIProtocolController: %(lunmasking)s"
-msgstr ""
+msgstr "ExposePaths 매개변수 LunMaskingSCSIProtocolController: %(lunmasking)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:771
 #, python-format
 msgid "Error mapping volume %s."
-msgstr ""
+msgstr "%s 볼륨을 맵핑하는 중 오류가 발생했습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:775
 #, python-format
 msgid "ExposePaths for volume %s completed successfully."
-msgstr ""
+msgstr "%s 볼륨의 ExposePaths가 완료되었습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:791
 #, python-format
@@ -6209,16 +6371,18 @@ msgid ""
 "HidePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(device_id)s  "
 "LunMaskingSCSIProtocolController: %(lunmasking)s"
 msgstr ""
+"HidePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(device_id)s  "
+"LunMaskingSCSIProtocolController: %(lunmasking)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:804
 #, python-format
 msgid "Error unmapping volume %s."
-msgstr ""
+msgstr "%s 볼륨을 맵핑 해제하는 중 오류가 발생했습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:808
 #, python-format
 msgid "HidePaths for volume %s completed successfully."
-msgstr ""
+msgstr "%s 볼륨의 HidePaths가 완료되었습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:821
 #, python-format
@@ -6226,16 +6390,18 @@ msgid ""
 "AddMembers: ConfigServicie: %(service)s  MaskingGroup: %(masking_group)s"
 "  Members: %(vol)s"
 msgstr ""
+"AddMembers: ConfigServicie: %(service)s  MaskingGroup: %(masking_group)s"
+"  멤버: %(vol)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:836
 #, python-format
 msgid "Error mapping volume %(vol)s. %(error)s"
-msgstr ""
+msgstr "%(vol)s 볼륨을 맵핑하는 중 오류가 발생했습니다. %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:841
 #, python-format
 msgid "AddMembers for volume %s completed successfully."
-msgstr ""
+msgstr "%s 볼륨의 AddMembers가 완료되었습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:854
 #, python-format
@@ -6243,52 +6409,54 @@ msgid ""
 "RemoveMembers: ConfigServicie: %(service)s  MaskingGroup: "
 "%(masking_group)s  Members: %(vol)s"
 msgstr ""
+"RemoveMembers: ConfigServicie: %(service)s  MaskingGroup: "
+"%(masking_group)s  멤버: %(vol)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:867
 #, python-format
 msgid "Error unmapping volume %(vol)s. %(error)s"
-msgstr ""
+msgstr "%(vol)s 볼륨을 맵핑 해제하는 중 오류가 발생했습니다. %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:872
 #, python-format
 msgid "RemoveMembers for volume %s completed successfully."
-msgstr ""
+msgstr "%s 볼륨의 RemoveMembers가 완료되었습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:878
 #, python-format
 msgid "Map volume: %(volume)s"
-msgstr ""
+msgstr "볼륨 맵핑: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:887
 #: cinder/volume/drivers/emc/emc_smis_common.py:917
 #, python-format
 msgid "Cannot find Controller Configuration Service for storage system %s"
-msgstr ""
+msgstr "스토리지 시스템 %s에 대한 제어기 구성 서비스를 찾을 수 없음"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:901
 #, python-format
 msgid "Unmap volume: %(volume)s"
-msgstr ""
+msgstr "볼륨 맵핑 해제: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:907
 #, python-format
 msgid "Volume %s is not mapped. No volume to unmap."
-msgstr ""
+msgstr "%s 볼륨이 맵핑되지 않았습니다. 맵핑 해제할 볼륨이 없습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:931
 #, python-format
 msgid "Initialize connection: %(volume)s"
-msgstr ""
+msgstr "연결 초기화: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:937
 #, python-format
 msgid "Volume %s is already mapped."
-msgstr ""
+msgstr "%s 볼륨이 이미 맵핑되었습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:949
 #, python-format
 msgid "Terminate connection: %(volume)s"
-msgstr ""
+msgstr "연결 종료: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:956
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:197
@@ -6344,16 +6512,16 @@ msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1063
 msgid "Storage type not found."
-msgstr ""
+msgstr "스토리지 유형을 찾을 수 없습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1079
 #, python-format
 msgid "Found Masking View: %s"
-msgstr ""
+msgstr "찾은 마스킹 보기: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1082
 msgid "Masking View not found."
-msgstr ""
+msgstr "마스킹 보기를 찾을 수 없습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1097
 #, python-format
@@ -6366,99 +6534,99 @@ msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1122
 msgid "Ecom user not found."
-msgstr ""
+msgstr "Ecom 사용자를 찾을 수 없습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1142
 #, python-format
 msgid "Ecom IP: %(ecomIp)s Port: %(ecomPort)s"
-msgstr ""
+msgstr "Ecom IP: %(ecomIp)s 포트: %(ecomPort)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1146
 msgid "Ecom server not found."
-msgstr ""
+msgstr "Ecom 서버를 찾을 수 없습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1153
 msgid "Cannot connect to ECOM server"
-msgstr ""
+msgstr "ECOM 서버를 연결할 수 없음"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1165
 #, python-format
 msgid "Found Replication Service: %s"
-msgstr ""
+msgstr "찾은 복제 서비스: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1178
 #, python-format
 msgid "Found Storage Configuration Service: %s"
-msgstr ""
+msgstr "찾은 스토리지 구성 서비스: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1191
 #, python-format
 msgid "Found Controller Configuration Service: %s"
-msgstr ""
+msgstr "찾은 제어기 구성 서비스: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1204
 #, python-format
 msgid "Found Storage Hardware ID Management Service: %s"
-msgstr ""
+msgstr "찾은 스토리지 하드웨어 ID 관리 서비스: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1248
 #, python-format
 msgid "Pool %(storage_type)s is not found."
-msgstr ""
+msgstr "%(storage_type)s 풀을 찾을 수 없습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1254
 #, python-format
 msgid "Storage system not found for pool %(storage_type)s."
-msgstr ""
+msgstr "%(storage_type)s 풀에 대한 스토리지 시스템을 찾을 수 없습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1260
 #, python-format
 msgid "Pool: %(pool)s  SystemName: %(systemname)s."
-msgstr ""
+msgstr "풀: %(pool)s  시스템 이름: %(systemname)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1277
 #, python-format
 msgid "Pool name: %(poolname)s  System name: %(systemname)s."
-msgstr ""
+msgstr "풀 이름: %(poolname)s  시스템 이름: %(systemname)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1292
 #, python-format
 msgid "Volume %(volumename)s not found on the array."
-msgstr ""
+msgstr "배열에서 %(volumename)s 볼륨을 찾을 수 없습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1295
 #, python-format
 msgid "Volume name: %(volumename)s  Volume instance: %(vol_instance)s."
-msgstr ""
+msgstr "볼륨 이름: %(volumename)s  볼륨 인스턴스: %(vol_instance)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1310
 #, python-format
 msgid "Source: %(volumename)s  Target: %(snapshotname)s."
-msgstr ""
+msgstr "소스: %(volumename)s  대상: %(snapshotname)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1322
 #, python-format
 msgid ""
 "Source: %(volumename)s  Target: %(snapshotname)s. Storage Synchronized "
 "not found. "
-msgstr ""
+msgstr "소스: %(volumename)s  대상: %(snapshotname)s. 동기화된 스토리지를 찾을 수 없습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1327
 #, python-format
 msgid ""
 "Storage system: %(storage_system)s  Storage Synchronized instance: "
 "%(sync)s."
-msgstr ""
+msgstr "스토리지 시스템: %(storage_system)s  동기화된 스토리지 인스턴스: %(sync)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1353
 #, python-format
 msgid "Error finding %s."
-msgstr ""
+msgstr "%s을(를) 찾는 중에 오류가 발생했습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1357
 #, python-format
 msgid "Found %(name)s: %(initiator)s."
-msgstr ""
+msgstr "%(name)s: %(initiator)s 찾음."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1417
 #, python-format
@@ -6466,6 +6634,8 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage system %(storage_system)s "
 "and initiator %(initiator)s is  %(ctrl)s."
 msgstr ""
+"스토리지 시스템 %(storage_system)s 및 개시자 %(initiator)s에 대한 "
+"LunMaskingSCSIProtocolController는 %(ctrl)s입니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1458
 #, python-format
@@ -6473,13 +6643,15 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage volume %(vol)s and initiator"
 " %(initiator)s is  %(ctrl)s."
 msgstr ""
+"스토리지 볼륨 %(vol)s 및 개시자 %(initiator)s에 대한 LunMaskingSCSIProtocolController는"
+" %(ctrl)s입니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1472
 #, python-format
 msgid ""
 "Volume %(name)s not found on the array. Cannot determine if there are "
 "volumes mapped."
-msgstr ""
+msgstr "배열에서 %(name)s 볼륨을 찾을 수 없습니다. 맵핑된 볼륨이 있는지 여부를 판별할 수 없습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1484
 #, python-format
@@ -6487,6 +6659,8 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage system %(storage)s and "
 "%(connector)s is %(ctrl)s."
 msgstr ""
+"스토리지 시스템 %(storage)s 및 %(connector)s에 대한 "
+"LunMaskingSCSIProtocolController는 %(ctrl)s입니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1496
 #, python-format
@@ -6494,11 +6668,13 @@ msgid ""
 "Found %(numVolumesMapped)d volumes on storage system %(storage)s mapped "
 "to %(initiator)s."
 msgstr ""
+"스토리지 시스템 %(storage)s에서 찾은 %(numVolumesMapped)d 볼륨이 %(initiator)s(으)로 "
+"맵핑되었습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1531
 #, python-format
 msgid "Available device number on %(storage)s: %(device)s."
-msgstr ""
+msgstr "%(storage)s에서 사용 가능한 디바이스 번호: %(device)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1556
 #, python-format
@@ -6510,27 +6686,27 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_smis_common.py:1592
 #, python-format
 msgid "Device number not found for volume %(volumename)s %(vol_instance)s."
-msgstr ""
+msgstr "%(volumename)s %(vol_instance)s 볼륨에 대한 디바이스 번호를 찾을 수 없습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1597
 #, python-format
 msgid "Found device number %(device)d for volume %(volumename)s %(vol_instance)s."
-msgstr ""
+msgstr "%(volumename)s %(vol_instance)s 볼륨에 대한 디바이스 번호 %(device)d을(를) 찾을 수 없습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1607
 #, python-format
 msgid "Device info: %(data)s."
-msgstr ""
+msgstr "디바이스 정보: %(data)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1629
 #, python-format
 msgid "Masking view: %(view)s DeviceMaskingGroup: %(masking)s."
-msgstr ""
+msgstr "마스킹 보기: %(view)s DeviceMaskingGroup: %(masking)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1651
 #, python-format
 msgid "Found Storage Processor System: %s"
-msgstr ""
+msgstr "찾은 스토리지 프로세서 시스템: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1679
 #, python-format
@@ -6538,52 +6714,54 @@ msgid ""
 "iSCSIProtocolEndpoint for storage system %(storage_system)s and SP %(sp)s"
 " is  %(endpoint)s."
 msgstr ""
+"스토리지 시스템 %(storage_system)s 및 SP %(sp)s에 대한 iSCSIProtocolEndpoint는 "
+"%(endpoint)s입니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1720
 msgid "Error finding Storage Hardware ID Service."
-msgstr ""
+msgstr "스토리지 하드웨어 ID 서비스를 찾는 중 오류가 발생했습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1726
 #, python-format
 msgid ""
 "EMCGetTargetEndpoints: Service: %(service)s  Storage HardwareIDs: "
 "%(hardwareids)s."
-msgstr ""
+msgstr "EMCGetTargetEndpoints: 서비스: %(service)s  스토리지 하드웨어 ID: %(hardwareids)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1738
 msgid "Error finding Target WWNs."
-msgstr ""
+msgstr "대상 WWN을 찾는 중 오류가 발생했습니다. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1748
 #, python-format
 msgid "Add target WWN: %s."
-msgstr ""
+msgstr "대상 WWN 추가: %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1750
 #, python-format
 msgid "Target WWNs: %s."
-msgstr ""
+msgstr "대상 WWN: %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1766
 #, python-format
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
-msgstr ""
+msgstr "%(wwpns)s의 스토리지 하드웨어 ID는 %(foundInstances)s입니다. "
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
-msgstr ""
+msgstr "스토리지 시스템 %(storage)s에서 SP %(sp)s에 대한 ISCSI 엔드포인트를 찾을 수 없습니다. "
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
-msgstr ""
+msgstr "ISCSI 특성: %s"
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:77
 msgid "Pool name is not specified."
@@ -6664,7 +6842,7 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:251
 #, python-format
 msgid "create_export: Volume: %(volume)s  Device ID: %(device_id)s"
-msgstr ""
+msgstr "create_export: 볼륨: %(volume)s  디바이스 ID: %(device_id)s"
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:292
 #, python-format
@@ -6864,93 +7042,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7216,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7105,7 +7283,7 @@ msgstr ""
 #: cinder/volume/drivers/huawei/rest_common.py:327
 #, python-format
 msgid "create_snapshot:snapshot name:%(snapshot)s, volume name:%(volume)s."
-msgstr ""
+msgstr "create_snapshot: 스냅샷 이름: %(snapshot)s, 볼륨 이름: %(volume)s."
 
 #: cinder/volume/drivers/huawei/rest_common.py:354
 #, python-format
@@ -7148,7 +7326,7 @@ msgstr ""
 #: cinder/volume/drivers/huawei/rest_common.py:874
 #, python-format
 msgid "terminate_connection:volume name: %(volume)s, initiator name: %(ini)s."
-msgstr ""
+msgstr "terminate_connection: 볼륨 이름: %(volume)s, 개시자 이름: %(ini)s."
 
 #: cinder/volume/drivers/huawei/rest_common.py:937
 #, python-format
@@ -7207,7 +7385,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7416,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7454,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7465,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7577,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,97 +7801,97 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
-msgstr ""
+msgstr "%s이(가) 설정되지 않았음"
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:143
 msgid "enter: do_setup"
-msgstr ""
+msgstr "입력: do_setup"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:153
 #, python-format
@@ -7726,11 +7904,11 @@ msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:214
 msgid "leave: do_setup"
-msgstr ""
+msgstr "남김: do_setup"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:218
 msgid "enter: check_for_setup_error"
-msgstr ""
+msgstr "입력: check_for_setup_error"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:222
 msgid "Unable to determine system name"
@@ -7744,7 +7922,7 @@ msgstr ""
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
-msgstr ""
+msgstr "인증에 비밀전호 또는 SSH 개인용 키가 필요합니다. san_password 또는 san_private_key 옵션을 설정하십시오. "
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:246
 #, python-format
@@ -7752,15 +7930,17 @@ msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
+"storwize_svc_flashcopy_timeout에 올바르지 않은 값 %d이(가) 지정되었습니다. 올바른 값은 0 - 600 "
+"사이의 값입니다. "
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
 msgid "leave: check_for_setup_error"
-msgstr ""
+msgstr "남김: check_for_setup_error"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:264
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
-msgstr ""
+msgstr "ensure_export: 스토리지에서 %s 볼륨을 찾을 수 없음"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:283
 msgid "The connector does not contain the required information."
@@ -7769,7 +7949,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:307
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "입력: initialize_connection: volume %(vol)s with connector %(conn)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:338
 msgid "CHAP secret exists for host but CHAP is disabled"
@@ -7778,29 +7958,29 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:343
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
-msgstr ""
+msgstr "initialize_connection: %s 볼륨에 대한 속성을 가져오지 못함"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:355
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
-msgstr ""
+msgstr "lsvdisk %s에서 예상된 열 이름을 찾을 수 없음"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:357
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
-msgstr ""
+msgstr "initialize_connection: %s 볼륨에 대한 볼륨 속성이 누락됨"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:374
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
-msgstr ""
+msgstr "initialize_connection: %(vol)s 볼륨에 대한 I/O 그룹 %(gid)s에서 노드를 찾을 수 없음"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
-msgstr ""
+msgstr "initialize_connection: %s 볼륨에 대한 선호 노드를 찾을 수 없음"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:406
 msgid ""
@@ -7808,14 +7988,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
-msgstr ""
+msgstr "initialize_connection: %(vol)s 볼륨 및 %(conn)s 커넥터에 대한 리턴 특성을 수집하지 못함.\n"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7823,101 +8010,110 @@ msgid ""
 " connector %(conn)s\n"
 " properties: %(prop)s"
 msgstr ""
+"남김: initialize_connection:\n"
+" 볼륨: %(vol)s\n"
+" 커넥터: %(conn)s\n"
+" 특성: %(prop)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "입력: terminate_connection: volume %(vol)s with connector %(conn)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "남김: terminate_connection: %(conn)s 커넥터가 있는 %(vol)s 볼륨"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
-msgstr ""
+msgstr "create_volume_from_snapshot: 소스 및 대상 크기가 다릅니다. "
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
-msgstr ""
+msgstr "create_cloned_volume: 소스 및 대상 크기가 다릅니다. "
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8121,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
-msgstr ""
+msgstr "스토리지에서 풀 데이터를 가져올 수 없음"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8051,27 +8254,27 @@ msgstr ""
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
-msgstr ""
+msgstr "storwize_svc_vol_rsize에 지정된 잘못된 값: 백분율(0-100) 또는 -1로 설정"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:388
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
-msgstr ""
+msgstr "storwize_svc_vol_warning에 지정된 잘못된 값: 백분율(0-100)로 설정"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:395
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
-msgstr ""
+msgstr "storwize_svc_vol_grainsize에 지정된 잘못된 값: 32, 64, 128 또는 256으로 설정"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
 msgid "System does not support compression"
-msgstr ""
+msgstr "시스템이 압축을 지원하지 않음"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:407
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
-msgstr ""
+msgstr "압축이 True로 설정되면 rsize도 설정되어야 함(-1이 아님)"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:413
 #, python-format
@@ -8079,6 +8282,8 @@ msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
+"storwize_svc_connection_protocol에 올바르지 않은 값 %(prot)s이(가) 지정되었습니다. 올바른 값은 "
+"%(enabled)s입니다. "
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:422
 #, python-format
@@ -8097,7 +8302,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:504
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
-msgstr ""
+msgstr "남김: _create_vdisk: 볼륨 %s "
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:531
 #, python-format
@@ -8133,7 +8338,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:601
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
-msgstr ""
+msgstr "Vdisk %(name)s이(가) %(src)s -> %(tgt)s 맵핑에 포함되지 않음"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:637
 #, python-format
@@ -8170,15 +8375,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8197,6 +8409,10 @@ msgid ""
 " stdout: %(out)s\n"
 " stderr: %(err)s"
 msgstr ""
+"CLI 실행 출력: \n"
+" command: %(cmd)s\n"
+" stdout: %(out)s\n"
+" stderr: %(err)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:53
 #, python-format
@@ -8228,12 +8444,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -8304,36 +8520,36 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:69
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
-msgstr ""
+msgstr "LUN %(name)s에 대해 정의된 메타데이터 특성 %(prop)s이(가) 없음"
 
 #: cinder/volume/drivers/netapp/iscsi.py:105
 #, python-format
 msgid "Using NetApp filer: %s"
-msgstr ""
+msgstr "NetApp 파일러 사용: %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:150
 msgid "Success getting LUN list from server"
-msgstr ""
+msgstr "서버에서 LUN 목록을 가져옴"
 
 #: cinder/volume/drivers/netapp/iscsi.py:166
 #, python-format
 msgid "Created LUN with name %s"
-msgstr ""
+msgstr "이름이 %s인 LUN이 작성됨"
 
 #: cinder/volume/drivers/netapp/iscsi.py:175
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
-msgstr ""
+msgstr "%(name)s 볼륨/스냅샷에 대한 LUN 테이블에 항목이 없습니다. "
 
 #: cinder/volume/drivers/netapp/iscsi.py:191
 #, python-format
 msgid "Destroyed LUN %s"
-msgstr ""
+msgstr "영구 삭제된 LUN %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:227
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
-msgstr ""
+msgstr "개시자 %(initiator_name)s에 LUN %(name)s 맵핑됨"
 
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
@@ -8345,22 +8561,22 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:238
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
-msgstr ""
+msgstr "LUN %s에 대한 LUN 대상 세부사항을 가져오지 못함"
 
 #: cinder/volume/drivers/netapp/iscsi.py:249
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
-msgstr ""
+msgstr "LUN %s에 대한 대상 포털을 가져오지 못함"
 
 #: cinder/volume/drivers/netapp/iscsi.py:252
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
-msgstr ""
+msgstr "LUN %s에 대한 대상 IQN을 가져오지 못함"
 
 #: cinder/volume/drivers/netapp/iscsi.py:290
 #, python-format
 msgid "Snapshot %s deletion successful"
-msgstr ""
+msgstr "%s 스냅샷이 삭제됨"
 
 #: cinder/volume/drivers/netapp/iscsi.py:310
 #: cinder/volume/drivers/netapp/iscsi.py:557
@@ -8373,21 +8589,21 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:325
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
-msgstr ""
+msgstr "개시자 %(initiator_name)s에서 LUN %(name)s 맵핑 해제됨"
 
 #: cinder/volume/drivers/netapp/iscsi.py:414
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
-msgstr ""
+msgstr "LUN 맵핑 중 오류. 코드: %(code)s, 메시지: %(message)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:433
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
-msgstr ""
+msgstr "LUN 맵핑 해제 중 오류. 코드: %(code)s, 메시지: %(message)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:503
 msgid "Object is not a NetApp LUN."
-msgstr ""
+msgstr "오브젝트가 NetApp LUN이 아닙니다."
 
 #: cinder/volume/drivers/netapp/iscsi.py:535
 #, python-format
@@ -8486,12 +8702,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:841
 #, python-format
 msgid "No iscsi service found for vserver %s"
-msgstr ""
+msgstr "vserver %s에 대한 iscsi 서비스를 찾을 수 없음"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1008
 #, python-format
 msgid "Cloned LUN with new name %s"
-msgstr ""
+msgstr "새 이름 %s을(를) 사용하여 LUN이 복제됨"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1012
 #, python-format
@@ -8516,7 +8732,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:1190
 #, python-format
 msgid "Failed to get vol with required size for volume: %s"
-msgstr ""
+msgstr "볼륨 필수 크기가 있는 볼륨을 가져오지 못했음: %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1299
 #, python-format
@@ -8526,12 +8742,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:1443
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
-msgstr ""
+msgstr "소스 %(name)s 및 대상 %(new_name)s을(를) 사용한 복제 조작이 완료됨"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1446
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
-msgstr ""
+msgstr "소스 %(name)s 및 대상 %(new_name)s을(를) 사용한 복제 조작이 실패함"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1509
 msgid "Volume refresh job already running. Returning..."
@@ -8670,7 +8886,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:460
 #, python-format
 msgid "Converted to raw, but format is now %s"
-msgstr ""
+msgstr "원시로 변환되었지만 형식은 지금 %s임"
 
 #: cinder/volume/drivers/netapp/nfs.py:470
 #, python-format
@@ -8748,7 +8964,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:866
 #, python-format
 msgid "No interface found on cluster for ip %s"
-msgstr ""
+msgstr "ip %s에 대한 클러스터에서 인터페이스를 찾을 수 없음"
 
 #: cinder/volume/drivers/netapp/nfs.py:907
 #, python-format
@@ -8893,12 +9109,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:1349
 #, python-format
 msgid "No storage path found for export path %s"
-msgstr ""
+msgstr "내보내기 경로 %s에 대해 스토리지 경로를 찾을 수 없음"
 
 #: cinder/volume/drivers/netapp/nfs.py:1359
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
-msgstr ""
+msgstr "소스 %(src_path)s, 대상 %(dest_path)s인 복제"
 
 #: cinder/volume/drivers/netapp/ssc_utils.py:241
 #, python-format
@@ -9267,7 +9483,7 @@ msgstr ""
 #: cinder/volume/drivers/nexenta/iscsi.py:105
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
-msgstr ""
+msgstr "%s 볼륨이 Nexenta SA에 존재하지 않음"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:151
 #, python-format
@@ -9343,10 +9559,10 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
-msgstr ""
+msgstr "내보내기를 확인하는 중에 대상 작성 오류 \"%s\" 무시"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:486
 #, python-format
@@ -9373,37 +9589,37 @@ msgstr ""
 msgid ""
 "Got error trying to destroy target group %(target_group)s, assuming it is"
 " already gone: %(exc)s"
-msgstr ""
+msgstr "%(target_group)s 대상 그룹을 영구 삭제하려는 오류가 발생함. 이미 발생했다고 가정함: %(exc)s"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:559
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
 "gone: %(exc)s"
-msgstr ""
+msgstr "%(target)s 대상을 삭제하려고 오류가 발생함. 이미 발생했다고 가정함: %(exc)s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:83
 #, python-format
 msgid "Sending JSON data: %s"
-msgstr ""
+msgstr "JSON 데이터를 보내는 중: %s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:88
 msgid "No headers in server response"
-msgstr ""
+msgstr "서버 응답에 헤더가 없음"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:89
 msgid "Bad response from server"
-msgstr ""
+msgstr "서버의 잘못된 응답"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:90
 #, python-format
 msgid "Auto switching to HTTPS connection to %s"
-msgstr ""
+msgstr "HTTPS 연결을 %s(으)로 자동 전환 중"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:96
 #, python-format
 msgid "Got response: %s"
-msgstr ""
+msgstr "받은 응답: %s"
 
 #: cinder/volume/drivers/nexenta/nfs.py:85
 #, python-format
@@ -9466,290 +9682,294 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
-msgstr ""
+msgstr "san_password 또는 san_private_key 지정"
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
-msgstr ""
+msgstr "san_ip가 설정되어야 함"
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
-msgstr ""
+msgstr "목록-보기 출력을 구문 분석할 수 없음: %s"
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
-msgstr ""
+msgstr "%(zfs_poolname)s에 대한 LUID를 찾을 수 없음. 출력=%(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
-msgstr ""
+msgstr "배열에 CPG(%s)가 없음"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
-msgstr ""
+msgstr "올바른 사용자 %(valid)s을(를) 지정해야 합니다. '%(persona)s' 값이 올바르지 않습니다. "
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
-msgstr ""
+msgstr "올바른 프로비저닝 유형 %(valid)s을(를) 지정해야 합니다. '%(prov)s' 값이 올바르지 않습니다. "
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
-msgstr ""
+msgstr "배열에 이미 볼륨(%s)이 있음"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
-msgstr ""
+msgstr "CLIQ 명령이 %s을(를) 리턴함"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, python-format
 msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
+msgstr "CLIQ 명령 %(verb)s %(cliq_args)s에 대한 양식이 잘못된 응답입니다. 결과=%(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, python-format
 msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
+msgstr "CLIQ 명령 %(verb)s %(cliq_args)s 실행 오류입니다. 결과=%(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, python-format
 msgid ""
 "Unexpected number of virtual ips for cluster  %(cluster_name)s. "
 "Result=%(_xml)s"
-msgstr ""
+msgstr "%(cluster_name)s 클러스터에 대한 예기치 않은 가상 IP 수입니다. 결과=%(_xml)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
+msgstr "볼륨 정보: %(volume_name)s => %(volume_attributes)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
-msgstr ""
+msgstr "local_path가 지원되지 않음"
 
 #: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:75
 #, python-format
@@ -10141,7 +10361,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10521,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10641,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10702,7 +10922,7 @@ msgstr ""
 
 #: cinder/volume/drivers/vmware/volumeops.py:744
 msgid "Copying disk data before snapshot of the VM"
-msgstr ""
+msgstr "VM 스냅샷 전에 디스크 데이터 복사 중"
 
 #: cinder/volume/drivers/vmware/volumeops.py:754
 #, python-format
@@ -10761,7 +10981,7 @@ msgstr ""
 #: cinder/volume/drivers/windows/windows.py:102
 #, python-format
 msgid "Creating folder %s "
-msgstr ""
+msgstr "%s 폴더 작성 중 "
 
 #: cinder/volume/drivers/windows/windows_utils.py:47
 #, python-format
@@ -10788,7 +11008,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +11016,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +11057,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/ml_IN/LC_MESSAGES/cinder.po b/cinder/locale/ml_IN/LC_MESSAGES/cinder.po
index 1c2ebc564..aab6e62cb 100644
--- a/cinder/locale/ml_IN/LC_MESSAGES/cinder.po
+++ b/cinder/locale/ml_IN/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Malayalam (India) translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-11-26 20:45+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Malayalam (India) "
-"(http://www.transifex.com/projects/p/openstack/language/ml_IN/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/ml_IN/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/mr_IN/LC_MESSAGES/cinder.po b/cinder/locale/mr_IN/LC_MESSAGES/cinder.po
index 5e92ce011..c111ed23a 100644
--- a/cinder/locale/mr_IN/LC_MESSAGES/cinder.po
+++ b/cinder/locale/mr_IN/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Marathi (India) translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-10-16 22:17+0000\n"
-"Last-Translator: Tom Fifield <tom@openstack.org>\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Marathi (India) "
-"(http://www.transifex.com/projects/p/openstack/language/mr_IN/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/mr_IN/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/ms/LC_MESSAGES/cinder.po b/cinder/locale/ms/LC_MESSAGES/cinder.po
index 038cd20dd..190e3c627 100644
--- a/cinder/locale/ms/LC_MESSAGES/cinder.po
+++ b/cinder/locale/ms/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Malay translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-05-29 08:13+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Malay "
-"(http://www.transifex.com/projects/p/openstack/language/ms/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/ms/)\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/nb/LC_MESSAGES/cinder.po b/cinder/locale/nb/LC_MESSAGES/cinder.po
index c2deabf2e..c1d4ff0c5 100644
--- a/cinder/locale/nb/LC_MESSAGES/cinder.po
+++ b/cinder/locale/nb/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Norwegian Bokmål translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-05-29 08:13+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Norwegian Bokmål "
-"(http://www.transifex.com/projects/p/openstack/language/nb/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/nb/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -30,7 +30,7 @@ msgstr ""
 
 #: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
-msgstr ""
+msgstr "En ukjent feil oppsto."
 
 #: cinder/exception.py:88
 msgid "Exception in string format operation"
@@ -58,11 +58,11 @@ msgstr ""
 
 #: cinder/exception.py:124
 msgid "Not authorized."
-msgstr ""
+msgstr "Ikke autorisert."
 
 #: cinder/exception.py:129
 msgid "User does not have admin privileges"
-msgstr ""
+msgstr "Bruker har ikke admin-rettigheter"
 
 #: cinder/exception.py:133
 #, python-format
@@ -166,7 +166,7 @@ msgstr ""
 
 #: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
-msgstr ""
+msgstr "Ressurs ble ikke funnet."
 
 #: cinder/exception.py:228
 #, python-format
@@ -257,7 +257,7 @@ msgstr ""
 #: cinder/exception.py:299
 #, python-format
 msgid "Service %(service_id)s could not be found."
-msgstr ""
+msgstr "Tjeneste %(service_id)s ble ikke funnet."
 
 #: cinder/exception.py:303
 #, python-format
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -926,15 +926,15 @@ msgstr ""
 
 #: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
-msgstr ""
+msgstr "Stoppet WSGI tjener."
 
 #: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
-msgstr ""
+msgstr "WSGI tjener har stoppet."
 
 #: cinder/wsgi.py:322
 msgid "You must implement __call__"
-msgstr ""
+msgstr "Du må implementere __call__"
 
 #: cinder/api/auth.py:26
 msgid ""
@@ -1016,7 +1016,7 @@ msgstr ""
 #: cinder/api/extensions.py:257
 #, python-format
 msgid "Loading extension %s"
-msgstr ""
+msgstr "Laster utvidelse %s"
 
 #: cinder/api/extensions.py:263
 #, python-format
@@ -1038,12 +1038,12 @@ msgstr ""
 #: cinder/api/extensions.py:288
 #, python-format
 msgid "Failed to load extension %(ext_factory)s: %(exc)s"
-msgstr ""
+msgstr "Kunne ikke laste utvidelse %(ext_factory)s: %(exc)s"
 
 #: cinder/api/extensions.py:357
 #, python-format
 msgid "Failed to load extension %(classpath)s: %(exc)s"
-msgstr ""
+msgstr "Kunne ikke laste utvidelse %(classpath)s: %(exc)s"
 
 #: cinder/api/extensions.py:382
 #, python-format
@@ -1164,7 +1164,7 @@ msgstr ""
 #: cinder/api/contrib/hosts.py:165
 #, python-format
 msgid "Invalid status: '%s'"
-msgstr ""
+msgstr "Ugyldig status: '%s'"
 
 #: cinder/api/contrib/hosts.py:168
 #, python-format
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1555,7 +1567,7 @@ msgstr ""
 #: cinder/api/openstack/wsgi.py:908
 #, python-format
 msgid "There is no such action: %s"
-msgstr ""
+msgstr "Ingen slik handling: %s"
 
 #: cinder/api/openstack/wsgi.py:911 cinder/api/openstack/wsgi.py:924
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
@@ -1618,7 +1630,7 @@ msgstr ""
 #: cinder/api/v2/snapshot_metadata.py:149 cinder/api/v2/volume_metadata.py:138
 #: cinder/api/v2/volume_metadata.py:148
 msgid "Metadata item was not found"
-msgstr ""
+msgstr "Metadata element ble ikke funnet"
 
 #: cinder/api/v1/snapshots.py:119 cinder/api/v2/snapshots.py:120
 #, python-format
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:463
+#, python-format
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:485
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Piping cmd1='%s' into..."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3506,12 +3581,12 @@ msgstr ""
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:448
 #, python-format
 msgid "Result was %s"
-msgstr ""
+msgstr "Resultat var %s"
 
 #: cinder/openstack/common/processutils.py:179
 #, python-format
 msgid "%r failed. Retrying."
-msgstr ""
+msgstr "%r feilet. Prøver på nytt."
 
 #: cinder/openstack/common/processutils.py:218
 #, python-format
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/ne/LC_MESSAGES/cinder.po b/cinder/locale/ne/LC_MESSAGES/cinder.po
index d43dddfb6..dab82f06c 100644
--- a/cinder/locale/ne/LC_MESSAGES/cinder.po
+++ b/cinder/locale/ne/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Nepali translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-08-30 22:38+0000\n"
-"Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Nepali "
-"(http://www.transifex.com/projects/p/openstack/language/ne/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/ne/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/nl_NL/LC_MESSAGES/cinder.po b/cinder/locale/nl_NL/LC_MESSAGES/cinder.po
index 4f4a7e65a..95678793f 100644
--- a/cinder/locale/nl_NL/LC_MESSAGES/cinder.po
+++ b/cinder/locale/nl_NL/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Dutch (Netherlands) translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-05-29 08:13+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Dutch (Netherlands) "
-"(http://www.transifex.com/projects/p/openstack/language/nl_NL/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/nl_NL/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -731,40 +731,40 @@ msgstr ""
 
 #: cinder/policy.py:30
 msgid "JSON file representing policy"
-msgstr ""
+msgstr "Beleidsrepresenterend JSON bestand"
 
 #: cinder/policy.py:33
 msgid "Rule checked when requested rule is not found"
-msgstr ""
+msgstr "Regel aangevinkt terwijl de opgevraagde regel niet is gevonden."
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:463
+#, python-format
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:474
+#, python-format
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:492
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Pipe1 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:506
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Pipe2 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/pa_IN/LC_MESSAGES/cinder.po b/cinder/locale/pa_IN/LC_MESSAGES/cinder.po
index f234cf2e1..1f1f122fd 100644
--- a/cinder/locale/pa_IN/LC_MESSAGES/cinder.po
+++ b/cinder/locale/pa_IN/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Punjabi (Gurmukhi, India) translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-12-15 11:10+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Panjabi (Punjabi) (India) "
-"(http://www.transifex.com/projects/p/openstack/language/pa_IN/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/pa_IN/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr "ਨੀਤੀ ਦੀ ਪ੍ਰਤੀਨਿਧਤਾ ਕਰਦੀ JSON ਫ
 msgid "Rule checked when requested rule is not found"
 msgstr "ਜਦੋਂ ਬੇਨਤੀ ਕੀਤਾ ਗਿਆ ਨਿਯਮ ਨਹੀਂ ਲੱਭਿਆ ਤਾਂ ਨਿਯਮ ਜਾਂਚੇ ਗਏ"
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/pl_PL/LC_MESSAGES/cinder.po b/cinder/locale/pl_PL/LC_MESSAGES/cinder.po
index 4371a38bf..c4f6b62f2 100644
--- a/cinder/locale/pl_PL/LC_MESSAGES/cinder.po
+++ b/cinder/locale/pl_PL/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Polish (Poland) translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-07-01 16:14+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Polish (Poland) "
-"(http://www.transifex.com/projects/p/openstack/language/pl_PL/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/pl_PL/)\n"
 "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && "
 "(n%100<10 || n%100>=20) ? 1 : 2)\n"
 "MIME-Version: 1.0\n"
@@ -31,7 +31,7 @@ msgstr ""
 
 #: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
-msgstr ""
+msgstr "Wystąpił nieznany wyjątek."
 
 #: cinder/exception.py:88
 msgid "Exception in string format operation"
@@ -59,7 +59,7 @@ msgstr ""
 
 #: cinder/exception.py:124
 msgid "Not authorized."
-msgstr ""
+msgstr "Nie upoważniono."
 
 #: cinder/exception.py:129
 msgid "User does not have admin privileges"
@@ -124,7 +124,7 @@ msgstr ""
 #: cinder/exception.py:183
 #, python-format
 msgid "Invalid content type %(content_type)s."
-msgstr ""
+msgstr "Nieprawidłowy typ zawartości %(content_type)s."
 
 #: cinder/exception.py:187
 #, python-format
@@ -134,7 +134,7 @@ msgstr ""
 #: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
-msgstr ""
+msgstr "%(err)s"
 
 #: cinder/exception.py:197
 #, python-format
@@ -148,12 +148,12 @@ msgstr ""
 
 #: cinder/exception.py:206
 msgid "Service is unavailable at this time."
-msgstr ""
+msgstr "Usługa jest niedostępna w tym czasie."
 
 #: cinder/exception.py:210
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
-msgstr ""
+msgstr "Obraz %(image_id)s jest niedozwolony: %(reason)s"
 
 #: cinder/exception.py:214
 #, python-format
@@ -163,16 +163,16 @@ msgstr ""
 #: cinder/exception.py:218
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
-msgstr ""
+msgstr "Spodziewano się UUID, jednakże otrzymano %(uuid)s."
 
 #: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
-msgstr ""
+msgstr "Nie znaleziono zasobu."
 
 #: cinder/exception.py:228
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
-msgstr ""
+msgstr "Wolumin %(volume_id)s nie może zostać znaleziony."
 
 #: cinder/exception.py:232
 #, python-format
@@ -738,34 +738,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -784,17 +784,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -803,39 +803,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1328,26 +1328,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1453,7 +1465,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1699,7 +1711,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1708,40 +1720,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2023,7 +2035,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2088,7 +2100,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2099,237 +2111,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:463
+#, python-format
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:474
+#, python-format
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:485
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Piping cmd1='%s' into..."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:486
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "cmd2='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
+#, python-format
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:702
 #, python-format
-msgid "Creating base image='%s'"
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2863,7 +2934,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2885,45 +2956,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3048,11 +3123,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3066,7 +3141,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3080,49 +3155,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3131,7 +3206,7 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migration.py:37
 msgid "version should be an integer"
-msgstr ""
+msgstr "wersja powinna być dana liczbą całkowitą"
 
 #: cinder/db/sqlalchemy/migration.py:64
 msgid "Upgrade DB using Essex release first."
@@ -3173,11 +3248,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3406,22 +3481,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3432,7 +3507,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3507,7 +3582,7 @@ msgstr ""
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:448
 #, python-format
 msgid "Result was %s"
-msgstr ""
+msgstr "Wynik był %s"
 
 #: cinder/openstack/common/processutils.py:179
 #, python-format
@@ -3759,12 +3834,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3835,7 +3910,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3869,7 +3944,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3901,7 +3976,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3910,12 +3985,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3923,7 +3998,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3941,7 +4016,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4201,66 +4276,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4294,20 +4369,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4322,18 +4397,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4356,7 +4431,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4376,7 +4451,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4385,13 +4460,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4399,10 +4474,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4441,285 +4523,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4774,14 +4850,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4907,7 +4983,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4987,219 +5063,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5308,174 +5384,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5642,8 +5718,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5676,12 +5752,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5752,19 +5828,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6570,18 +6646,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6865,93 +6941,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7039,7 +7115,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7208,7 +7284,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7239,12 +7315,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7277,7 +7353,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7288,111 +7364,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7400,77 +7476,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7624,90 +7700,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7809,14 +7885,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7825,100 +7908,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7926,31 +8014,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8171,15 +8266,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8229,12 +8331,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9344,7 +9446,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9467,288 +9569,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10142,7 +10248,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10302,7 +10408,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10422,62 +10528,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10789,7 +10895,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10797,35 +10903,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10833,42 +10944,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/pt/LC_MESSAGES/cinder.po b/cinder/locale/pt/LC_MESSAGES/cinder.po
index 1ad2f1023..32d809d86 100644
--- a/cinder/locale/pt/LC_MESSAGES/cinder.po
+++ b/cinder/locale/pt/LC_MESSAGES/cinder.po
@@ -1,17 +1,18 @@
 # Portuguese translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
+# alfalb_mansil <manuela.silva@sky.com>, 2013
 msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-05-29 08:13+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Portuguese "
-"(http://www.transifex.com/projects/p/openstack/language/pt/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/pt/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -30,7 +31,7 @@ msgstr ""
 
 #: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
-msgstr ""
+msgstr "Ocorreu uma exceção desconhecida."
 
 #: cinder/exception.py:88
 msgid "Exception in string format operation"
@@ -58,21 +59,21 @@ msgstr ""
 
 #: cinder/exception.py:124
 msgid "Not authorized."
-msgstr ""
+msgstr "Não autorizado."
 
 #: cinder/exception.py:129
 msgid "User does not have admin privileges"
-msgstr ""
+msgstr "O utilizador não possui direitos de administrador"
 
 #: cinder/exception.py:133
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
-msgstr ""
+msgstr "A política não permite que sejam realizadas %(action)s."
 
 #: cinder/exception.py:137
 #, python-format
 msgid "Not authorized for image %(image_id)s."
-msgstr ""
+msgstr "Não autorizado para a imagem %(image_id)s."
 
 #: cinder/exception.py:141
 msgid "Volume driver not ready."
@@ -80,7 +81,7 @@ msgstr ""
 
 #: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
-msgstr ""
+msgstr "Parâmetros inceitáveis."
 
 #: cinder/exception.py:150
 #, python-format
@@ -95,15 +96,15 @@ msgstr ""
 #: cinder/exception.py:159
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
-msgstr ""
+msgstr "O volume %(volume_id)s ainda está anexado, desanexe primeiro o volume."
 
 #: cinder/exception.py:163
 msgid "Failed to load data into json format"
-msgstr ""
+msgstr "Não foi possível carregar os dados para o formato json"
 
 #: cinder/exception.py:167
 msgid "The results are invalid."
-msgstr ""
+msgstr "Os resultados são inválidos."
 
 #: cinder/exception.py:171
 #, python-format
@@ -123,7 +124,7 @@ msgstr ""
 #: cinder/exception.py:183
 #, python-format
 msgid "Invalid content type %(content_type)s."
-msgstr ""
+msgstr "Tipo de conteúdo %(content_type)s inválido."
 
 #: cinder/exception.py:187
 #, python-format
@@ -133,7 +134,7 @@ msgstr ""
 #: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
-msgstr ""
+msgstr "%(err)s"
 
 #: cinder/exception.py:197
 #, python-format
@@ -147,7 +148,7 @@ msgstr ""
 
 #: cinder/exception.py:206
 msgid "Service is unavailable at this time."
-msgstr ""
+msgstr "De momento, o serviço está indisponível."
 
 #: cinder/exception.py:210
 #, python-format
@@ -157,7 +158,7 @@ msgstr ""
 #: cinder/exception.py:214
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
-msgstr ""
+msgstr "O dispositivo no caminho %(path)s está indisponível: %(reason)s"
 
 #: cinder/exception.py:218
 #, python-format
@@ -166,12 +167,12 @@ msgstr ""
 
 #: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
-msgstr ""
+msgstr "Não foi possível encontrar o recurso."
 
 #: cinder/exception.py:228
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
-msgstr ""
+msgstr "Não foi possível encontrar o volume %(volume_id)s."
 
 #: cinder/exception.py:232
 #, python-format
@@ -650,7 +651,7 @@ msgstr ""
 #: cinder/exception.py:648
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
-msgstr ""
+msgstr "Não é possível localizar a conta %(account_name)s no dispositivo Solidfire"
 
 #: cinder/exception.py:654
 #, python-format
@@ -737,34 +738,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +784,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +803,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -861,7 +862,7 @@ msgstr ""
 #: cinder/utils.py:413
 #, python-format
 msgid "Invalid backend: %s"
-msgstr ""
+msgstr "'Backend' inválido: %s"
 
 #: cinder/utils.py:424
 #, python-format
@@ -896,23 +897,26 @@ msgstr ""
 #: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
-msgstr ""
+msgstr "Não é possível encontrar cert_file : %s"
 
 #: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
-msgstr ""
+msgstr "Não é possível encontrar ca_file : %s"
 
 #: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
-msgstr ""
+msgstr "Não é possível encontrar key_file : %s"
 
 #: 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 ""
+"Quando executar o servidor no modo SSL, deverá especificar o valor da "
+"opção de ambos os ficheiros cert_file e key_file no seu ficheiro de "
+"configuração"
 
 #: cinder/wsgi.py:178
 #, python-format
@@ -950,11 +954,11 @@ msgstr ""
 
 #: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:282
 msgid "limit param must be an integer"
-msgstr ""
+msgstr "O limite do parâmetro deve ser um íntegro"
 
 #: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:279
 msgid "limit param must be positive"
-msgstr ""
+msgstr "O limite do parâmetro deve ser positivo"
 
 #: cinder/api/common.py:120
 msgid "offset param must be an integer"
@@ -1327,26 +1331,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1468,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1462,7 +1478,7 @@ msgstr ""
 
 #: cinder/api/middleware/auth.py:112
 msgid "Invalid service catalog json."
-msgstr ""
+msgstr "Catálogo de serviço json inválido."
 
 #: cinder/api/middleware/fault.py:44
 #, python-format
@@ -1482,7 +1498,7 @@ msgstr ""
 #: cinder/api/middleware/sizelimit.py:55 cinder/api/middleware/sizelimit.py:64
 #: cinder/api/middleware/sizelimit.py:78
 msgid "Request is too large."
-msgstr ""
+msgstr "Pedido demasiado longo."
 
 #: cinder/api/openstack/__init__.py:69
 msgid "Must specify an ExtensionManager class"
@@ -1698,7 +1714,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1723,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2038,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2103,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2114,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
+#, python-format
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Deleting base image='%s'"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:457
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:463
+#, python-format
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:474
+#, python-format
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:485
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Piping cmd1='%s' into..."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:486
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "cmd2='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
+#, python-format
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:702
 #, python-format
-msgid "Creating base image='%s'"
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2937,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2959,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3126,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3144,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3158,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3130,7 +3209,7 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migration.py:37
 msgid "version should be an integer"
-msgstr ""
+msgstr "a versão deverá ser um íntegro"
 
 #: cinder/db/sqlalchemy/migration.py:64
 msgid "Upgrade DB using Essex release first."
@@ -3172,11 +3251,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3359,7 +3438,7 @@ msgstr ""
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
-msgstr ""
+msgstr "A recarregar o ficheiro em cache %s"
 
 #: cinder/openstack/common/gettextutils.py:271
 msgid "Message objects do not support addition."
@@ -3405,25 +3484,25 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
-msgstr ""
+msgstr "Pedido: %s"
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
-msgstr ""
+msgstr "A função registo do sistema deve ser uma de %s"
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
-msgstr ""
+msgstr "Chamada fatal para a config. pedida: %(msg)s"
 
 #: cinder/openstack/common/loopingcall.py:82
 #, python-format
@@ -3431,9 +3510,9 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
-msgstr ""
+msgstr "na chamada de repetição da duração fixada"
 
 #: cinder/openstack/common/loopingcall.py:129
 #, python-format
@@ -3442,7 +3521,7 @@ msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:136
 msgid "in dynamic looping call"
-msgstr ""
+msgstr "na chamada de repetição dinâmica"
 
 #: cinder/openstack/common/periodic_task.py:43
 #, python-format
@@ -3603,7 +3682,7 @@ msgstr ""
 #: cinder/openstack/common/sslutils.py:98
 #, python-format
 msgid "Invalid SSL version : %s"
-msgstr ""
+msgstr "Versão SSL inválida: %s"
 
 #: cinder/openstack/common/strutils.py:92
 #, python-format
@@ -3650,7 +3729,7 @@ msgstr ""
 
 #: cinder/openstack/common/db/exception.py:44
 msgid "Invalid Parameter: Unicode is not supported by the current database."
-msgstr ""
+msgstr "Parâmetro Inválido: o Unicode não é suportado pela base de dados atual."
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:487
 msgid "DB exception wrapped."
@@ -3664,7 +3743,7 @@ msgstr ""
 #: cinder/openstack/common/db/sqlalchemy/session.py:610
 #, python-format
 msgid "SQL connection failed. %s attempts left."
-msgstr ""
+msgstr "A ligação SQL falhou. Tentativas restantes: %s ."
 
 #: cinder/openstack/common/db/sqlalchemy/utils.py:33
 msgid "Sort key supplied was not valid."
@@ -3758,12 +3837,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3913,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3947,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3878,7 +3957,7 @@ msgstr ""
 #: cinder/tests/test_ibm_xiv_ds8k.py:102
 #, python-format
 msgid "Volume not found for instance %(instance_id)s."
-msgstr ""
+msgstr "Não foi encontrado o volume para a instância %(instance_id)s."
 
 #: cinder/tests/test_misc.py:58
 #, python-format
@@ -3900,7 +3979,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3988,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +4001,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4019,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4279,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4372,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4400,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4434,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4454,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4463,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4477,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4526,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4853,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4986,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5066,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5387,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5721,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5755,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5831,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6649,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6944,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7118,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7287,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7318,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7356,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7367,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7479,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7703,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7888,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7911,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8017,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8269,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8334,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9449,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9572,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10251,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10411,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10531,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10898,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10906,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10947,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/pt_BR/LC_MESSAGES/cinder.po b/cinder/locale/pt_BR/LC_MESSAGES/cinder.po
index fdcf5af34..d25553312 100644
--- a/cinder/locale/pt_BR/LC_MESSAGES/cinder.po
+++ b/cinder/locale/pt_BR/LC_MESSAGES/cinder.po
@@ -1,16 +1,19 @@
-# Brazilian Portuguese translation for cinder
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the cinder package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+# Portuguese (Brazil) translations for cinder.
+# Copyright (C) 2014 ORGANIZATION
+# This file is distributed under the same license as the cinder project.
 #
-msgid ""
-msgstr ""
-"Project-Id-Version:  cinder\n"
-"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-03-29 06:10+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"
+# Translators:
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011
+# Gabriel Wainer, 2013
+msgid ""
+msgstr ""
+"Project-Id-Version:  Cinder\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
+"Language-Team: Portuguese (Brazil) "
+"(http://www.transifex.com/projects/p/cinder/language/pt_BR/)\n"
 "Plural-Forms: nplurals=2; plural=(n > 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -20,25 +23,27 @@ msgstr ""
 #: cinder/context.py:63
 #, python-format
 msgid "Arguments dropped when creating context: %s"
-msgstr ""
+msgstr "Argumentos descartados ao criar o contexto: %s"
 
 #: cinder/context.py:107
 #, python-format
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
-msgstr ""
+msgstr "read_deleted pode ser apenas um de 'no', 'yes' ou 'only', não %r"
 
 #: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
-msgstr ""
+msgstr "Ocorreu uma exceção desconhecida."
 
 #: cinder/exception.py:88
 msgid "Exception in string format operation"
-msgstr ""
+msgstr "Exceção na operação de formato de sequência"
 
 #: cinder/exception.py:107
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
 msgstr ""
+"Resposta inválida ou inesperada da API de backend do volume de "
+"armazenamento: %(data)s"
 
 #: cinder/exception.py:112
 #, python-format
@@ -57,21 +62,21 @@ msgstr ""
 
 #: cinder/exception.py:124
 msgid "Not authorized."
-msgstr ""
+msgstr "Não autorizado."
 
 #: cinder/exception.py:129
 msgid "User does not have admin privileges"
-msgstr ""
+msgstr "O usuário não tem privilégios de administrador"
 
 #: cinder/exception.py:133
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
-msgstr ""
+msgstr "A política não permite que %(action)s sejam executadas."
 
 #: cinder/exception.py:137
-#, fuzzy, python-format
+#, python-format
 msgid "Not authorized for image %(image_id)s."
-msgstr "sem método para mensagem: %s"
+msgstr "Não autorizado para a imagem %(image_id)s."
 
 #: cinder/exception.py:141
 msgid "Volume driver not ready."
@@ -79,7 +84,7 @@ msgstr ""
 
 #: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
-msgstr ""
+msgstr "Parâmetros inaceitáveis."
 
 #: cinder/exception.py:150
 #, python-format
@@ -94,15 +99,15 @@ msgstr ""
 #: cinder/exception.py:159
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
-msgstr ""
+msgstr "O volume %(volume_id)s ainda está anexado, separe o volume primeiro."
 
 #: cinder/exception.py:163
 msgid "Failed to load data into json format"
-msgstr ""
+msgstr "Falha ao carregar dados no formato json"
 
 #: cinder/exception.py:167
 msgid "The results are invalid."
-msgstr ""
+msgstr "Os resultados são inválidos."
 
 #: cinder/exception.py:171
 #, python-format
@@ -122,7 +127,7 @@ msgstr ""
 #: cinder/exception.py:183
 #, python-format
 msgid "Invalid content type %(content_type)s."
-msgstr ""
+msgstr "Tipo de conteúdo inválido %(content_type)s."
 
 #: cinder/exception.py:187
 #, python-format
@@ -132,7 +137,7 @@ msgstr ""
 #: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
-msgstr ""
+msgstr "%(err)s"
 
 #: cinder/exception.py:197
 #, python-format
@@ -146,12 +151,12 @@ msgstr ""
 
 #: cinder/exception.py:206
 msgid "Service is unavailable at this time."
-msgstr ""
+msgstr "O serviço está indisponível neste momento."
 
 #: cinder/exception.py:210
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
-msgstr ""
+msgstr "A imagem %(image_id)s é inaceitável: %(reason)s"
 
 #: cinder/exception.py:214
 #, python-format
@@ -161,21 +166,21 @@ msgstr ""
 #: cinder/exception.py:218
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
-msgstr ""
+msgstr "Esperado um uuid, mas recebido %(uuid)s."
 
 #: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
-msgstr ""
+msgstr "O recurso não pôde ser localizado."
 
 #: cinder/exception.py:228
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
-msgstr ""
+msgstr "O volume %(volume_id)s não pôde ser localizado."
 
 #: cinder/exception.py:232
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
-msgstr ""
+msgstr "O volume %(volume_id)s não possui metadados com a chave %(metadata_key)s."
 
 #: cinder/exception.py:237
 #, python-format
@@ -198,16 +203,18 @@ msgstr ""
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
 msgstr ""
+"A captura instantânea %(snapshot_id)s não tem metadados com a chave "
+"%(metadata_key)s."
 
 #: cinder/exception.py:255
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
-msgstr ""
+msgstr "O tipo de volume %(volume_type_id)s não pôde ser localizado."
 
 #: cinder/exception.py:259
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
-msgstr ""
+msgstr "O tipo de volume com o nome %(volume_type_name)s não pôde ser localizado."
 
 #: cinder/exception.py:264
 #, python-format
@@ -215,6 +222,8 @@ msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
 msgstr ""
+"O Tipo de Volume %(volume_type_id)s não tem specs extras com a chave "
+"%(extra_specs_key)s."
 
 #: cinder/exception.py:269
 #, python-format
@@ -226,113 +235,117 @@ msgstr ""
 #: cinder/exception.py:274
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
-msgstr ""
+msgstr "A captura instantânea %(snapshot_id)s não pôde ser localizada."
 
 #: cinder/exception.py:278
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
-msgstr ""
+msgstr "excluindo o volume %(volume_name)s que possui captura instantânea"
 
 #: cinder/exception.py:282
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
 msgstr ""
+"excluindo captura instantânea %(snapshot_name)s que possui volumes "
+"dependentes"
 
 #: cinder/exception.py:287
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
-msgstr ""
+msgstr "Nenhum ID de destino localizado para o volume %(volume_id)s."
 
 #: cinder/exception.py:291
 #, python-format
 msgid "Invalid image href %(image_href)s."
-msgstr ""
+msgstr "Imagem inválida href %(image_href)s."
 
 #: cinder/exception.py:295
 #, python-format
 msgid "Image %(image_id)s could not be found."
-msgstr ""
+msgstr "A imagem %(image_id)s não pôde ser localizada."
 
 #: cinder/exception.py:299
 #, python-format
 msgid "Service %(service_id)s could not be found."
-msgstr ""
+msgstr "O serviço %(service_id)s não pôde ser localizado."
 
 #: cinder/exception.py:303
 #, python-format
 msgid "Host %(host)s could not be found."
-msgstr ""
+msgstr "O host %(host)s não pôde ser localizado."
 
 #: cinder/exception.py:307
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
-msgstr ""
+msgstr "O Filtro do Host do Planejador %(filter_name)s não pôde ser localizado."
 
 #: cinder/exception.py:311
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
 msgstr ""
+"O Ponderador %(weigher_name)s do Host do Planejador não pôde ser "
+"localizado."
 
 #: cinder/exception.py:315
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
-msgstr ""
+msgstr "Não foi possível localizar o binário %(binary)s no host %(host)s."
 
 #: cinder/exception.py:319
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
-msgstr ""
+msgstr "Expiração de reserva inválida %(expire)s."
 
 #: cinder/exception.py:323
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
-msgstr ""
+msgstr "A mudança usaria menos de 0 para os recursos a seguir: %(unders)s"
 
 #: cinder/exception.py:328
 msgid "Quota could not be found"
-msgstr ""
+msgstr "A cota não pôde ser localizada"
 
 #: cinder/exception.py:332
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
-msgstr ""
+msgstr "Recursos da cota desconhecidos %(unknown)s."
 
 #: cinder/exception.py:336
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
-msgstr ""
+msgstr "A cota para o projeto %(project_id)s não pôde ser localizada."
 
 #: cinder/exception.py:340
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
-msgstr ""
+msgstr "A classe da cota %(class_name)s não pôde ser localizada."
 
 #: cinder/exception.py:344
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
-msgstr ""
+msgstr "O uso da cota para o projeto %(project_id)s não pôde ser localizado."
 
 #: cinder/exception.py:348
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
-msgstr ""
+msgstr "A reserva da cota %(uuid)s não pôde ser localizada."
 
 #: cinder/exception.py:352
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
-msgstr ""
+msgstr "Cota excedida para os recursos: %(overs)s"
 
 #: cinder/exception.py:356
 #, python-format
 msgid "File %(file_path)s could not be found."
-msgstr ""
+msgstr "O arquivo %(file_path)s não pôde ser localizado."
 
 #: cinder/exception.py:365
-#, fuzzy, python-format
+#, python-format
 msgid "Volume Type %(id)s already exists."
-msgstr "group %s já existe"
+msgstr "O Tipo de Volume %(id)s já existe."
 
 #: cinder/exception.py:369
 #, python-format
@@ -347,27 +360,29 @@ msgstr ""
 #: cinder/exception.py:377
 #, python-format
 msgid "Malformed message body: %(reason)s"
-msgstr ""
+msgstr "Corpo da mensagem malformado: %(reason)s"
 
 #: cinder/exception.py:381
 #, python-format
 msgid "Could not find config at %(path)s"
-msgstr ""
+msgstr "Não foi possível localizar a configuração em %(path)s"
 
 #: cinder/exception.py:385
-#, fuzzy, python-format
+#, python-format
 msgid "Could not find parameter %(param)s"
-msgstr "Não é possível localizar o volume %s"
+msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
+"Não foi possível carregar o aplicativo paste app '%(name)s' a partir do "
+"%(path)s"
 
 #: cinder/exception.py:393
 #, python-format
 msgid "No valid host was found. %(reason)s"
-msgstr ""
+msgstr "Nenhum host válido localizado. %(reason)s"
 
 #: cinder/exception.py:402
 #, python-format
@@ -384,37 +399,39 @@ msgstr ""
 #: cinder/exception.py:415
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
-msgstr ""
+msgstr "Número máximo de volumes permitido (%(allowed)d) excedido"
 
 #: cinder/exception.py:419
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
-msgstr ""
+msgstr "Número máximo de capturas instantâneas permitido (%(allowed)d) excedido"
 
 #: cinder/exception.py:423
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
-msgstr ""
+msgstr "Detectado mais de um volume com o nome %(vol_name)s"
 
 #: cinder/exception.py:427
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
 msgstr ""
+"Não é possível criar o volume_type com o nome %(name)s e as "
+"especificações %(extra_specs)s"
 
 #: cinder/exception.py:432
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
-msgstr ""
+msgstr "Comando desconhecido ou não suportado %(cmd)s"
 
 #: cinder/exception.py:436
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
-msgstr ""
+msgstr "Resposta malformada para o comando %(cmd)s: %(reason)s"
 
 #: cinder/exception.py:440
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
-msgstr ""
+msgstr "A operação falhou com o status=%(status)s. Dump completo: %(data)s"
 
 #: cinder/exception.py:444
 #, python-format
@@ -422,6 +439,8 @@ msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
 msgstr ""
+"A visão de metadados não pode ser atualizada; existe a chave %(key)s para"
+" o ID do volume %(volume_id)s"
 
 #: cinder/exception.py:449
 #, python-format
@@ -449,9 +468,9 @@ msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:469
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to copy image to volume: %(reason)s"
-msgstr "Não é possível localizar o volume %s"
+msgstr ""
 
 #: cinder/exception.py:473
 msgid "Invalid Ceph args provided for backup rbd operation"
@@ -476,16 +495,16 @@ msgstr ""
 #: cinder/exception.py:493
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
-msgstr ""
+msgstr "O backup %(backup_id)s não pôde ser localizado."
 
 #: cinder/exception.py:497
 msgid "Failed to identify volume backend."
 msgstr ""
 
 #: cinder/exception.py:501
-#, fuzzy, python-format
+#, python-format
 msgid "Invalid backup: %(reason)s"
-msgstr "Backend inválido: %s"
+msgstr "Backup inválido: %(reason)s"
 
 #: cinder/exception.py:505
 #, python-format
@@ -605,39 +624,39 @@ msgid "Zadara Cinder Driver exception."
 msgstr ""
 
 #: cinder/exception.py:611
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to create server object for initiator %(name)s"
-msgstr ""
-"Não é possível criar o VDI no SR %(sr_ref)s para a instância "
-"%(instance_name)s"
+msgstr "Não é possível criar o objeto do servidor para o inicializador %(name)s"
 
 #: cinder/exception.py:615
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
 msgstr ""
+"Não é possível localizar o objeto do servidor para o inicializador "
+"%(name)s"
 
 #: cinder/exception.py:619
 msgid "Unable to find any active VPSA controller"
-msgstr ""
+msgstr "Não é possível localizar nenhum controlador VPSA ativo"
 
 #: cinder/exception.py:623
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
-msgstr ""
+msgstr "Falha ao recuperar anexos para o volume %(name)s"
 
 #: cinder/exception.py:627
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
-msgstr ""
+msgstr "Informações de anexo inválidas para o volume %(name)s: %(reason)s"
 
 #: cinder/exception.py:631
 #, python-format
 msgid "Bad HTTP response status %(status)s"
-msgstr ""
+msgstr "Status de resposta HTTP inválido %(status)s"
 
 #: cinder/exception.py:636
 msgid "Bad response from SolidFire API"
-msgstr ""
+msgstr "Resposta inválida da API SolidFire"
 
 #: cinder/exception.py:640
 msgid "SolidFire Cinder Driver exception"
@@ -646,12 +665,14 @@ msgstr ""
 #: cinder/exception.py:644
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
-msgstr ""
+msgstr "Erro na resposta da API SolidFire: data=%(data)s"
 
 #: cinder/exception.py:648
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
 msgstr ""
+"Não foi possível localizar a conta %(account_name)s no dispositivo "
+"Solidfire"
 
 #: cinder/exception.py:654
 #, python-format
@@ -660,24 +681,24 @@ msgstr ""
 
 #: cinder/exception.py:659
 msgid "Unknown NFS exception"
-msgstr ""
+msgstr "Exceção NFS desconhecida"
 
 #: cinder/exception.py:663
 msgid "No mounted NFS shares found"
-msgstr ""
+msgstr "Nenhum compartilhamento NFS montado foi localizado"
 
 #: cinder/exception.py:667 cinder/exception.py:680
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
-msgstr ""
+msgstr "Não há compartilhamento que possa hospedar %(volume_size)sG"
 
 #: cinder/exception.py:672
 msgid "Unknown Gluster exception"
-msgstr ""
+msgstr "Exceção de Gluster desconhecida"
 
 #: cinder/exception.py:676
 msgid "No mounted Gluster shares found"
-msgstr ""
+msgstr "Nenhum compartilhamento de Gluster montado foi localizado"
 
 #: cinder/exception.py:684
 #, python-format
@@ -728,44 +749,44 @@ msgstr ""
 
 #: cinder/manager.py:128
 msgid "Notifying Schedulers of capabilities ..."
-msgstr ""
+msgstr "Notificando os Planejadores de recursos ..."
 
 #: cinder/policy.py:30
 msgid "JSON file representing policy"
-msgstr ""
+msgstr "Arquivo JSON representando a política"
 
 #: cinder/policy.py:33
 msgid "Rule checked when requested rule is not found"
-msgstr ""
+msgstr "Regra marcada quando a regra solicitada não for localizada"
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
-msgstr ""
+msgstr "Reservas criadas %s"
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -784,17 +805,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
-msgstr ""
+msgstr "Iniciando o nó %(topic)s (versão %(version_string)s)"
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -803,40 +824,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr "Encerrado serviço que não tem entrada na base de dados"
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr "O objeto da base de dados do serviço desapareceu, Recriando."
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr "Recuperada conexão servidor de modelo."
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr "servidor de modelo perdido"
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
-msgstr ""
+msgstr "serve() pode ser chamado apenas uma vez"
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
-#, fuzzy
 msgid "Full set of CONF:"
-msgstr "Conjunto completo de FLAGS:"
+msgstr "Conjunto completo de CONF:"
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -853,12 +873,12 @@ msgstr ""
 
 #: cinder/utils.py:213
 msgid "Specify a password or private_key"
-msgstr ""
+msgstr "Especifique uma senha ou private_key"
 
 #: cinder/utils.py:229
 #, python-format
 msgid "Error connecting via ssh: %s"
-msgstr ""
+msgstr "Erro ao conectar via ssh: %s"
 
 #: cinder/utils.py:413
 #, python-format
@@ -873,7 +893,7 @@ msgstr "backend %s"
 #: cinder/utils.py:699
 #, python-format
 msgid "Could not remove tmpdir: %s"
-msgstr ""
+msgstr "Não foi possível remover tmpdir: %s"
 
 #: cinder/utils.py:760
 #, python-format
@@ -883,7 +903,7 @@ msgstr ""
 #: cinder/utils.py:782
 #, python-format
 msgid "%s is not a string or unicode"
-msgstr ""
+msgstr "%s não é uma sequência ou unicode"
 
 #: cinder/utils.py:786
 #, python-format
@@ -893,33 +913,37 @@ msgstr ""
 #: cinder/utils.py:791
 #, python-format
 msgid "%(name)s has more than %(max_length)s characters."
-msgstr ""
+msgstr "%(name)s possui mais de %(max_length)s caracteres."
 
 #: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find cert_file : %s"
-msgstr "Impossível localizar uma porta aberta"
+msgstr "Não é possível localizar cert_file : %s"
 
 #: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find ca_file : %s"
-msgstr "Impossível localizar uma porta aberta"
+msgstr "Não é possível localizar ca_file : %s"
 
 #: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find key_file : %s"
-msgstr "Não é possível destruir o VBD %s"
+msgstr "Não é possível localizar key_file : %s"
 
 #: 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 ""
+"Ao executar o servidor no modo SSL, você deve especificar um valor de "
+"opção cert_file e key_file no seu arquivo de configuração"
 
 #: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
+"Não foi possível ligar a %(host)s:%(port)s depois de tentar por 30 "
+"segundos"
 
 #: cinder/wsgi.py:215
 #, python-format
@@ -928,15 +952,15 @@ msgstr ""
 
 #: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
-msgstr ""
+msgstr "Parando o servidor WSGI."
 
 #: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
-msgstr ""
+msgstr "O servidor WSGI foi interrompido."
 
 #: cinder/wsgi.py:322
 msgid "You must implement __call__"
-msgstr ""
+msgstr "Você deve implementar __call__"
 
 #: cinder/api/auth.py:26
 msgid ""
@@ -952,83 +976,83 @@ msgstr ""
 
 #: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:282
 msgid "limit param must be an integer"
-msgstr ""
+msgstr "o parâmetro limit deve ser um número inteiro"
 
 #: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:279
 msgid "limit param must be positive"
-msgstr ""
+msgstr "o parâmetro limit deve ser positivo"
 
 #: cinder/api/common.py:120
 msgid "offset param must be an integer"
-msgstr ""
+msgstr "o parâmetro offset deve ser um número inteiro"
 
 #: cinder/api/common.py:134
 msgid "offset param must be positive"
-msgstr ""
+msgstr "o parâmetro offset deve ser positivo"
 
 #: cinder/api/common.py:162
 #, python-format
 msgid "marker [%s] not found"
-msgstr ""
+msgstr "marcador [%s] não localizado"
 
 #: cinder/api/common.py:189
 #, python-format
 msgid "href %s does not contain version"
-msgstr ""
+msgstr "href %s não contém versão"
 
 #: cinder/api/extensions.py:183
 msgid "Initializing extension manager."
-msgstr ""
+msgstr "Inicializando o Extension Manager."
 
 #: cinder/api/extensions.py:198
 #, python-format
 msgid "Loaded extension: %s"
-msgstr ""
+msgstr "Extensão carregada: %s"
 
 #: cinder/api/extensions.py:236
 #, python-format
 msgid "Ext name: %s"
-msgstr ""
+msgstr "Nome da ext: %s"
 
 #: cinder/api/extensions.py:237
 #, python-format
 msgid "Ext alias: %s"
-msgstr ""
+msgstr "Alias da ext: %s"
 
 #: cinder/api/extensions.py:238
 #, python-format
 msgid "Ext description: %s"
-msgstr ""
+msgstr "Descrição da ext: %s"
 
 #: cinder/api/extensions.py:240
 #, python-format
 msgid "Ext namespace: %s"
-msgstr ""
+msgstr "Namespace da ext: %s"
 
 #: cinder/api/extensions.py:241
 #, python-format
 msgid "Ext updated: %s"
-msgstr ""
+msgstr "Ext atualizada: %s"
 
 #: cinder/api/extensions.py:243
 #, python-format
 msgid "Exception loading extension: %s"
-msgstr ""
+msgstr "Exceção ao carregar extensão: %s"
 
 #: cinder/api/extensions.py:257
 #, python-format
 msgid "Loading extension %s"
-msgstr ""
+msgstr "Carregando a extensão %s"
 
 #: cinder/api/extensions.py:263
 #, python-format
 msgid "Calling extension factory %s"
-msgstr ""
+msgstr "Chamando factory da extensão %s"
 
 #: cinder/api/extensions.py:277
 #, python-format
 msgid "osapi_volume_extension is set to deprecated path: %s"
-msgstr ""
+msgstr "osapi_volume_extension está configurado para caminho descontinuado: %s"
 
 #: cinder/api/extensions.py:279
 #, python-format
@@ -1036,21 +1060,23 @@ msgid ""
 "Please set your flag or cinder.conf settings for osapi_volume_extension "
 "to: %s"
 msgstr ""
+"Defina suas configurações de sinalizador ou cinder.conf para "
+"osapi_volume_extension como: %s"
 
 #: cinder/api/extensions.py:288
 #, python-format
 msgid "Failed to load extension %(ext_factory)s: %(exc)s"
-msgstr ""
+msgstr "Falha ao carregar a extensão %(ext_factory)s: %(exc)s"
 
 #: cinder/api/extensions.py:357
 #, python-format
 msgid "Failed to load extension %(classpath)s: %(exc)s"
-msgstr ""
+msgstr "Falha ao carregar a extensão %(classpath)s: %(exc)s"
 
 #: cinder/api/extensions.py:382
 #, python-format
 msgid "Failed to load extension %(ext_name)s: %(exc)s"
-msgstr ""
+msgstr "Falha ao carregar a extensão %(ext_name)s: %(exc)s"
 
 #: cinder/api/sizelimit.py:25
 msgid ""
@@ -1060,66 +1086,68 @@ msgstr ""
 
 #: cinder/api/xmlutil.py:266
 msgid "element is not a child"
-msgstr ""
+msgstr "o elemento não é um filho"
 
 #: cinder/api/xmlutil.py:463
 msgid "root element selecting a list"
-msgstr ""
+msgstr "elemento-raiz selecionando uma lista"
 
 #: cinder/api/xmlutil.py:786
 #, python-format
 msgid "Template tree mismatch; adding slave %(slavetag)s to master %(mastertag)s"
 msgstr ""
+"Incompatibilidade da árvore de modelo; incluindo escravo %(slavetag)s "
+"para principal %(mastertag)s"
 
 #: cinder/api/xmlutil.py:907
 msgid "subclasses must implement construct()!"
-msgstr ""
+msgstr "as subclasses devem implementar a construção()!"
 
 #: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
-msgstr ""
+msgstr "Atualizando %(resource)s '%(id)s' com '%(update)r'"
 
 #: cinder/api/contrib/backups.py:161
 #, python-format
 msgid "show called for member %s"
-msgstr ""
+msgstr "mostrar chamado para o membro %s"
 
 #: cinder/api/contrib/backups.py:173
 #, python-format
 msgid "delete called for member %s"
-msgstr ""
+msgstr "excluir chamado para o membro %s"
 
 #: cinder/api/contrib/backups.py:176
 #, python-format
 msgid "Delete backup with id: %s"
-msgstr ""
+msgstr "Excluir o backup com o ID: %s"
 
 #: cinder/api/contrib/backups.py:218
 #, python-format
 msgid "Creating new backup %s"
-msgstr ""
+msgstr "Criando novo backup %s"
 
 #: cinder/api/contrib/backups.py:228 cinder/api/contrib/backups.py:260
 #: cinder/api/contrib/volume_transfer.py:157
 #: cinder/api/contrib/volume_transfer.py:193
 msgid "Incorrect request body format"
-msgstr ""
+msgstr "Formato do corpo da solicitação incorreta"
 
 #: cinder/api/contrib/backups.py:234
 #, python-format
 msgid "Creating backup of volume %(volume_id)s in container %(container)s"
-msgstr ""
+msgstr "Criando backup do volume %(volume_id)s no contêiner %(container)s"
 
 #: cinder/api/contrib/backups.py:257
 #, python-format
 msgid "Restoring backup %(backup_id)s (%(body)s)"
-msgstr ""
+msgstr "Restaurando o backup %(backup_id)s (%(body)s)"
 
 #: cinder/api/contrib/backups.py:267
 #, python-format
 msgid "Restoring backup %(backup_id)s to volume %(volume_id)s"
-msgstr ""
+msgstr "Restaurando o backup %(backup_id)s para o volume %(volume_id)s"
 
 #: cinder/api/contrib/backups.py:300
 #, python-format
@@ -1152,39 +1180,39 @@ msgstr ""
 
 #: cinder/api/contrib/extended_snapshot_attributes.py:60
 msgid "Snapshot not found."
-msgstr ""
+msgstr "Captura instantânea não encontrada."
 
 #: cinder/api/contrib/hosts.py:86 cinder/api/openstack/wsgi.py:237
 msgid "cannot understand XML"
-msgstr ""
+msgstr "não é possível entender XML"
 
 #: cinder/api/contrib/hosts.py:136
 #, python-format
 msgid "Host '%s' could not be found."
-msgstr ""
+msgstr "O host '%s' não pôde ser localizado."
 
 #: cinder/api/contrib/hosts.py:165
 #, python-format
 msgid "Invalid status: '%s'"
-msgstr ""
+msgstr "Status inválido: '%s'"
 
 #: cinder/api/contrib/hosts.py:168
 #, python-format
 msgid "Invalid update setting: '%s'"
-msgstr ""
+msgstr "Configuração de atualização inválida: '%s'"
 
 #: cinder/api/contrib/hosts.py:180
 #, python-format
 msgid "Setting host %(host)s to %(state)s."
-msgstr ""
+msgstr "Configurando o host %(host)s como %(state)s."
 
 #: cinder/api/contrib/hosts.py:206
 msgid "Describe-resource is admin only functionality"
-msgstr ""
+msgstr "O Descrever-recurso é uma funcionalidade apenas administrativa"
 
 #: cinder/api/contrib/hosts.py:214
 msgid "Host not found"
-msgstr ""
+msgstr "Host não localizado"
 
 #: cinder/api/contrib/qos_specs_manage.py:110
 msgid "Please specify a name for QoS specs."
@@ -1221,7 +1249,7 @@ msgstr ""
 
 #: cinder/api/contrib/quotas.py:68
 msgid "Quota limit must be -1 or greater."
-msgstr ""
+msgstr "O limite de cota deve ser -1 ou maior."
 
 #: cinder/api/contrib/quotas.py:105
 msgid "Missing required element quota_set in request body."
@@ -1234,7 +1262,7 @@ msgstr ""
 
 #: cinder/api/contrib/scheduler_hints.py:36
 msgid "Malformed scheduler_hints attribute"
-msgstr ""
+msgstr "Atributo scheduler_hints malformado"
 
 #: cinder/api/contrib/services.py:91
 msgid ""
@@ -1268,19 +1296,19 @@ msgstr ""
 
 #: cinder/api/contrib/types_extra_specs.py:101
 msgid "Request body empty"
-msgstr ""
+msgstr "Corpo da solicitação vazio"
 
 #: cinder/api/contrib/types_extra_specs.py:105
 #: cinder/api/v1/snapshot_metadata.py:75 cinder/api/v1/volume_metadata.py:75
 #: cinder/api/v2/snapshot_metadata.py:75 cinder/api/v2/volume_metadata.py:74
 msgid "Request body and URI mismatch"
-msgstr ""
+msgstr "Corpo da solicitação e incompatibilidade de URI"
 
 #: cinder/api/contrib/types_extra_specs.py:108
 #: cinder/api/v1/snapshot_metadata.py:79 cinder/api/v1/volume_metadata.py:79
 #: cinder/api/v2/snapshot_metadata.py:79 cinder/api/v2/volume_metadata.py:78
 msgid "Request body contains too many items"
-msgstr ""
+msgstr "O corpo da solicitação contém excesso de itens"
 
 #: cinder/api/contrib/types_extra_specs.py:152
 msgid ""
@@ -1319,7 +1347,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_actions.py:230
 msgid "No image_name was specified in request."
-msgstr ""
+msgstr "Nenhum image_name foi especificado na solicitação."
 
 #: cinder/api/contrib/volume_actions.py:238
 msgid "Bad value for 'force' parameter."
@@ -1329,26 +1357,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1374,14 +1414,14 @@ msgid "Listing volume transfers"
 msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:147
-#, fuzzy, python-format
+#, python-format
 msgid "Creating new volume transfer %s"
-msgstr "Criar volume de %s GB"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:162
-#, fuzzy, python-format
+#, python-format
 msgid "Creating transfer of volume %s"
-msgstr "Falha ao obter metadados para o ip: %s"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:183
 #, python-format
@@ -1389,9 +1429,9 @@ msgid "Accepting volume transfer %s"
 msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:196
-#, fuzzy, python-format
+#, python-format
 msgid "Accepting transfer %s"
-msgstr "Criar volume de %s GB"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:217
 #, python-format
@@ -1454,7 +1494,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1464,7 +1504,7 @@ msgstr ""
 
 #: cinder/api/middleware/auth.py:112
 msgid "Invalid service catalog json."
-msgstr ""
+msgstr "Catálogo de serviço json inválido."
 
 #: cinder/api/middleware/fault.py:44
 #, python-format
@@ -1474,7 +1514,7 @@ msgstr "Capturado o erro: %s"
 #: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:978
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
-msgstr ""
+msgstr "%(url)s retornado com HTTP %(status)d"
 
 #: cinder/api/middleware/fault.py:69
 #, python-format
@@ -1484,16 +1524,16 @@ msgstr ""
 #: cinder/api/middleware/sizelimit.py:55 cinder/api/middleware/sizelimit.py:64
 #: cinder/api/middleware/sizelimit.py:78
 msgid "Request is too large."
-msgstr ""
+msgstr "A solicitação é muito grande."
 
 #: cinder/api/openstack/__init__.py:69
 msgid "Must specify an ExtensionManager class"
-msgstr ""
+msgstr "Deve especificar uma classe ExtensionManager"
 
 #: cinder/api/openstack/__init__.py:80
 #, python-format
 msgid "Extended resource: %s"
-msgstr ""
+msgstr "Recurso estendido: %s"
 
 #: cinder/api/openstack/__init__.py:104
 #, python-format
@@ -1501,11 +1541,13 @@ msgid ""
 "Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
 "resource"
 msgstr ""
+"Extensão %(ext_name)s: Não é possível estender o recurso %(collection)s: "
+"Nenhum recurso desse tipo"
 
 #: cinder/api/openstack/__init__.py:110
 #, python-format
 msgid "Extension %(ext_name)s extending resource: %(collection)s"
-msgstr ""
+msgstr "Extensão %(ext_name)s estendendo o recurso: %(collection)s"
 
 #: cinder/api/openstack/__init__.py:126
 msgid ""
@@ -1521,43 +1563,43 @@ msgstr ""
 
 #: cinder/api/openstack/wsgi.py:212 cinder/api/openstack/wsgi.py:628
 msgid "cannot understand JSON"
-msgstr ""
+msgstr "não é possível entender JSON"
 
 #: cinder/api/openstack/wsgi.py:633
 msgid "too many body keys"
-msgstr ""
+msgstr "excesso de chaves de corpo"
 
 #: cinder/api/openstack/wsgi.py:671
 #, python-format
 msgid "Exception handling resource: %s"
-msgstr ""
+msgstr "Exceção ao manipular recurso: %s"
 
 #: cinder/api/openstack/wsgi.py:676
 #, python-format
 msgid "Fault thrown: %s"
-msgstr ""
+msgstr "Falha lançada: %s"
 
 #: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "HTTP exception thrown: %s"
-msgstr ""
+msgstr "Exceção de HTTP lançada: %s"
 
 #: cinder/api/openstack/wsgi.py:787
 msgid "Empty body provided in request"
-msgstr ""
+msgstr "Corpo vazio fornecido na solicitação"
 
 #: cinder/api/openstack/wsgi.py:793
 msgid "Unrecognized Content-Type provided in request"
-msgstr ""
+msgstr "Tipo de Conteúdo Não Reconhecido fornecido na solicitação"
 
 #: cinder/api/openstack/wsgi.py:797
 msgid "No Content-Type provided in request"
-msgstr ""
+msgstr "Nenhum Tipo de Conteúdo fornecido na solicitação"
 
 #: cinder/api/openstack/wsgi.py:908
 #, python-format
 msgid "There is no such action: %s"
-msgstr ""
+msgstr "Essa ação não existe: %s"
 
 #: cinder/api/openstack/wsgi.py:911 cinder/api/openstack/wsgi.py:924
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
@@ -1569,20 +1611,20 @@ msgstr ""
 #: cinder/api/v2/volume_metadata.py:52 cinder/api/v2/volume_metadata.py:70
 #: cinder/api/v2/volume_metadata.py:95 cinder/api/v2/volume_metadata.py:120
 msgid "Malformed request body"
-msgstr ""
+msgstr "Corpo da solicitação malformado"
 
 #: cinder/api/openstack/wsgi.py:921
 msgid "Unsupported Content-Type"
-msgstr ""
+msgstr "Tipo de Conteúdo Não Suportado"
 
 #: cinder/api/openstack/wsgi.py:933
 msgid "Malformed request url"
-msgstr ""
+msgstr "URL da solicitação malformada"
 
 #: cinder/api/openstack/wsgi.py:981
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
-msgstr ""
+msgstr "%(url)s retornou uma falha: %(e)s"
 
 #: cinder/api/openstack/volume/__init__.py:25
 msgid ""
@@ -1602,18 +1644,19 @@ msgid ""
 "Only %(value)s %(verb)s request(s) can be made to %(uri)s every "
 "%(unit_string)s."
 msgstr ""
+"Apenas solicitações %(value)s %(verb)s podem ser feitas ao %(uri)s a cada"
+" %(unit_string)s."
 
 #: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
-msgstr ""
+msgstr "Essa solicitação estava limitada a taxa."
 
 #: cinder/api/v1/snapshot_metadata.py:37 cinder/api/v1/snapshot_metadata.py:117
 #: cinder/api/v1/snapshot_metadata.py:156 cinder/api/v2/snapshot_metadata.py:37
 #: cinder/api/v2/snapshot_metadata.py:117
 #: cinder/api/v2/snapshot_metadata.py:156
-#, fuzzy
 msgid "snapshot does not exist"
-msgstr "instância %s: fazendo um snapshot"
+msgstr "a captura instantânea não existe"
 
 #: cinder/api/v1/snapshot_metadata.py:139
 #: cinder/api/v1/snapshot_metadata.py:149 cinder/api/v1/volume_metadata.py:139
@@ -1621,12 +1664,12 @@ msgstr "instância %s: fazendo um snapshot"
 #: cinder/api/v2/snapshot_metadata.py:149 cinder/api/v2/volume_metadata.py:138
 #: cinder/api/v2/volume_metadata.py:148
 msgid "Metadata item was not found"
-msgstr ""
+msgstr "O item de metadados não foi localizado"
 
 #: cinder/api/v1/snapshots.py:119 cinder/api/v2/snapshots.py:120
 #, python-format
 msgid "Delete snapshot with id: %s"
-msgstr ""
+msgstr "Excluir captura instantânea com o id: %s"
 
 #: cinder/api/v1/snapshots.py:173 cinder/api/v2/snapshots.py:184
 msgid "'volume_id' must be specified"
@@ -1635,33 +1678,33 @@ msgstr ""
 #: cinder/api/v1/snapshots.py:182 cinder/api/v2/snapshots.py:193
 #, python-format
 msgid "Create snapshot from volume %s"
-msgstr ""
+msgstr "Criar captura instantânea a partir do volume %s"
 
 #: cinder/api/v1/snapshots.py:186 cinder/api/v2/snapshots.py:202
 #, python-format
 msgid "Invalid value '%s' for force. "
-msgstr ""
+msgstr "Valor inválido '%s' para força. "
 
 #: cinder/api/v1/volume_metadata.py:37 cinder/api/v1/volume_metadata.py:117
 #: cinder/api/v1/volume_metadata.py:156 cinder/api/v2/volume_metadata.py:36
 #: cinder/api/v2/volume_metadata.py:116 cinder/api/v2/volume_metadata.py:155
 msgid "volume does not exist"
-msgstr ""
+msgstr "o volume não existe"
 
 #: cinder/api/v1/volumes.py:114
 #, python-format
 msgid "vol=%s"
-msgstr ""
+msgstr "vol=%s"
 
 #: cinder/api/v1/volumes.py:293 cinder/api/v2/volumes.py:181
 #, python-format
 msgid "Delete volume with id: %s"
-msgstr ""
+msgstr "Excluir o volume com o ID: %s"
 
 #: cinder/api/v1/volumes.py:347 cinder/api/v1/volumes.py:351
 #: cinder/api/v2/volumes.py:251 cinder/api/v2/volumes.py:255
 msgid "Invalid imageRef provided."
-msgstr ""
+msgstr "imageRef inválida fornecida."
 
 #: cinder/api/v1/volumes.py:391 cinder/api/v2/volumes.py:308
 #, python-format
@@ -1681,7 +1724,7 @@ msgstr "Criar volume de %s GB"
 #: cinder/api/v1/volumes.py:504
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
-msgstr ""
+msgstr "Removendo opções '%(bad_options)s' da consulta"
 
 #: cinder/api/v2/snapshots.py:111 cinder/api/v2/snapshots.py:126
 #: cinder/api/v2/snapshots.py:267
@@ -1701,53 +1744,53 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
-msgstr ""
+msgstr "Removendo opções '%s' da consulta"
 
 #: cinder/backup/api.py:66
-#, fuzzy
 msgid "Backup status must be available or error"
-msgstr "O status do volume parece estar disponível"
+msgstr "O status de backup deve ser disponível ou erro"
 
-#: cinder/backup/api.py:115
-#, fuzzy
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
-msgstr "O status do volume parece estar disponível"
+msgstr "O volume a ser feito backup deve estar disponível"
 
-#: cinder/backup/api.py:150
-#, fuzzy
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
-msgstr "O status do volume parece estar disponível"
+msgstr "O status de backup deve ser disponível"
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
-msgstr ""
+msgstr "O backup a ser restaurado tem tamanho inválido"
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
-msgstr ""
+msgstr "Criando o volume de %(size)s GB para restauração do backup %(backup_id)s"
 
-#: cinder/backup/api.py:180
-#, fuzzy
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
-msgstr "O status do volume parece estar disponível"
+msgstr "O volume a ser restaurado deve estar disponível"
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
+"O tamanho do volume %(volume_size)d é muito pequeno para restaurar o "
+"backup do tamanho %(size)d."
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
+"Sobrescrevendo o volume %(volume_id)s com a restauração do backup "
+"%(backup_id)s"
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2029,7 +2072,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2094,7 +2137,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2105,243 +2148,302 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
 #, python-format
 msgid "unsupported compression algorithm: %s"
-msgstr ""
+msgstr "algoritmo de compressão não suportado: %s"
 
 #: cinder/backup/drivers/swift.py:122
 #, python-format
@@ -2352,16 +2454,18 @@ msgstr ""
 #, python-format
 msgid "_create_container started, container: %(container)s,backup: %(backup_id)s"
 msgstr ""
+"_create_container iniciado, contêiner: %(container)s, backup: "
+"%(backup_id)s"
 
 #: cinder/backup/drivers/swift.py:159
 #, python-format
 msgid "_generate_swift_object_name_prefix: %s"
-msgstr ""
+msgstr "_generate_swift_object_name_prefix: %s"
 
 #: cinder/backup/drivers/swift.py:168
 #, python-format
 msgid "generated object list: %s"
-msgstr ""
+msgstr "lista de objetos gerada: %s"
 
 #: cinder/backup/drivers/swift.py:179
 #, python-format
@@ -2369,6 +2473,8 @@ msgid ""
 "_write_metadata started, container name: %(container)s, metadata "
 "filename: %(filename)s"
 msgstr ""
+"_write_metadata started, nome do contêiner: %(container)s, nome do "
+"arquivo de metadados: %(filename)s"
 
 #: cinder/backup/drivers/swift.py:197
 #, python-format
@@ -2377,10 +2483,12 @@ msgid ""
 "[%(etag)s] is not the same as MD5 of metadata file sent to swift "
 "[%(md5)s]"
 msgstr ""
+"erro ao gravar arquivo de metadados no swift; o MD5 do arquivo de "
+"metadados no swift [%(etag)s] não é o mesmo enviado ao swift [%(md5)s]"
 
 #: cinder/backup/drivers/swift.py:202
 msgid "_write_metadata finished"
-msgstr ""
+msgstr "_write_metadata concluído"
 
 #: cinder/backup/drivers/swift.py:207
 #, python-format
@@ -2388,16 +2496,18 @@ msgid ""
 "_read_metadata started, container name: %(container)s, metadata filename:"
 " %(filename)s"
 msgstr ""
+"_read_metadata started, nome do contêiner: %(container)s, nome do arquivo"
+" de metadados: %(filename)s"
 
 #: cinder/backup/drivers/swift.py:212
 #, python-format
 msgid "_read_metadata finished (%s)"
-msgstr ""
+msgstr "_read_metadata concluído (%s)"
 
 #: cinder/backup/drivers/swift.py:222
 #, python-format
 msgid "volume size %d is invalid."
-msgstr ""
+msgstr "O tamanho do volume %d é inválido."
 
 #: cinder/backup/drivers/swift.py:236
 #, python-format
@@ -2406,10 +2516,13 @@ msgid ""
 "%(volume_size_bytes)d, swift object names prefix %(object_prefix)s, "
 "availability zone: %(availability_zone)s"
 msgstr ""
+"iniciando o backup do volume: %(volume_id)s no swift, tamanho do volume: "
+"%(volume_size_bytes)d, prefixo de nomes de objeto do swift "
+"%(object_prefix)s, zona de disponibilidade: %(availability_zone)s"
 
 #: cinder/backup/drivers/swift.py:260
 msgid "reading chunk of data from volume"
-msgstr ""
+msgstr "lendo chunk de dados do volume"
 
 #: cinder/backup/drivers/swift.py:267
 #, python-format
@@ -2417,24 +2530,26 @@ msgid ""
 "compressed %(data_size_bytes)d bytes of data to %(comp_size_bytes)d bytes"
 " using %(algorithm)s"
 msgstr ""
+"%(data_size_bytes)d bytes de dados compactados para %(comp_size_bytes)d "
+"bytes usando %(algorithm)s"
 
 #: cinder/backup/drivers/swift.py:276
 msgid "not compressing data"
-msgstr ""
+msgstr "não compactando dados"
 
 #: cinder/backup/drivers/swift.py:280
 msgid "About to put_object"
-msgstr ""
+msgstr "Sobre put_object"
 
 #: cinder/backup/drivers/swift.py:286
 #, python-format
 msgid "swift MD5 for %(object_name)s: %(etag)s"
-msgstr ""
+msgstr "MD5 de swift para %(object_name)s: %(etag)s"
 
 #: cinder/backup/drivers/swift.py:290
 #, python-format
 msgid "backup MD5 for %(object_name)s: %(md5)s"
-msgstr ""
+msgstr "MD5 de backup para %(object_name)s: %(md5)s"
 
 #: cinder/backup/drivers/swift.py:293
 #, python-format
@@ -2442,15 +2557,17 @@ msgid ""
 "error writing object to swift, MD5 of object in swift %(etag)s is not the"
 " same as MD5 of object sent to swift %(md5)s"
 msgstr ""
+"erro ao gravar objeto no swift; o MD5 do objeto no swift %(etag)s não é o"
+" mesmo enviado ao swift %(md5)s"
 
 #: cinder/backup/drivers/swift.py:301
 msgid "Calling eventlet.sleep(0)"
-msgstr ""
+msgstr "Chamando eventlet.sleep(0)"
 
 #: cinder/backup/drivers/swift.py:319
 #, python-format
 msgid "backup %s finished."
-msgstr ""
+msgstr "backup %s concluído."
 
 #: cinder/backup/drivers/swift.py:352
 #, python-format
@@ -2460,18 +2577,20 @@ msgstr ""
 #: cinder/backup/drivers/swift.py:362
 #, python-format
 msgid "v1 swift volume backup restore of %s started"
-msgstr ""
+msgstr "foi iniciada a restauração de backup de volume do %s no swift v1"
 
 #: cinder/backup/drivers/swift.py:367
 #, python-format
 msgid "metadata_object_names = %s"
-msgstr ""
+msgstr "metadata_object_names = %s"
 
 #: cinder/backup/drivers/swift.py:373
 msgid ""
 "restore_backup aborted, actual swift object list in swift does not match "
 "object list stored in metadata"
 msgstr ""
+"restore_backup interrompido; a lista real de objetos no swift não "
+"corresponde à lista de objetos armazenada nos metadados"
 
 #: cinder/backup/drivers/swift.py:379
 #, python-format
@@ -2479,16 +2598,19 @@ msgid ""
 "restoring object from swift. backup: %(backup_id)s, container: "
 "%(container)s, swift object name: %(object_name)s, volume: %(volume_id)s"
 msgstr ""
+"restaurando objeto do swift. backup: %(backup_id)s, contêiner: "
+"%(container)s, nome do objeto de swift: %(object_name)s, volume: "
+"%(volume_id)s"
 
 #: cinder/backup/drivers/swift.py:395
 #, python-format
 msgid "decompressing data using %s algorithm"
-msgstr ""
+msgstr "descompactando dados usando o algoritmo %s"
 
 #: cinder/backup/drivers/swift.py:418
 #, python-format
 msgid "v1 swift volume backup restore of %s finished"
-msgstr ""
+msgstr "foi concluída a restauração de backup de volume do %s no swift v1"
 
 #: cinder/backup/drivers/swift.py:426
 #, python-format
@@ -2496,40 +2618,45 @@ msgid ""
 "starting restore of backup %(object_prefix)s from swift container: "
 "%(container)s, to volume %(volume_id)s, backup: %(backup_id)s"
 msgstr ""
+"iniciando a restauração do backup %(object_prefix)s a partir do contêiner"
+" do swift: %(container)s, para o volume %(volume_id)s, backup: "
+"%(backup_id)s"
 
 #: cinder/backup/drivers/swift.py:440
 #, python-format
 msgid "Restoring swift backup version %s"
-msgstr ""
+msgstr "Restaurando a versão de backup do swift %s"
 
 #: cinder/backup/drivers/swift.py:445
 #, python-format
 msgid "No support to restore swift backup version %s"
-msgstr ""
+msgstr "Não há suporte para restaurar a versão de backup do swift %s"
 
 #: cinder/backup/drivers/swift.py:461
 #, python-format
 msgid "restore %(backup_id)s to %(volume_id)s finished."
-msgstr ""
+msgstr "restauração de %(backup_id)s para %(volume_id)s concluída."
 
 #: cinder/backup/drivers/swift.py:475
 msgid "swift error while listing objects, continuing with delete"
-msgstr ""
+msgstr "erro de swift ao listar objetos, continuando com a exclusão"
 
 #: cinder/backup/drivers/swift.py:484
 #, python-format
 msgid "swift error while deleting object %s, continuing with delete"
-msgstr ""
+msgstr "erro de swift ao excluir o objeto %s, continuando com a exclusão"
 
 #: cinder/backup/drivers/swift.py:487
 #, python-format
 msgid "deleted swift object: %(swift_object_name)s in container: %(container)s"
 msgstr ""
+"objeto de swift excluído: %(swift_object_name)s no contêiner: "
+"%(container)s"
 
 #: cinder/backup/drivers/swift.py:497
 #, python-format
 msgid "delete %s finished"
-msgstr ""
+msgstr "exclusão de %s concluída"
 
 #: cinder/backup/drivers/tsm.py:78
 #, python-format
@@ -2716,19 +2843,19 @@ msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
 #: cinder/brick/exception.py:108
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
-msgstr "Falha ao obter metadados para o ip: %s"
+msgstr "Falha ao criar destino iscsi para o volume %(volume_id)s."
 
 #: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
-msgstr ""
+msgstr "Falha ao remover destino iscsi para o volume %(volume_id)s."
 
 #: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
-msgstr ""
+msgstr "Falha ao anexar destino iSCSI para o volume %(volume_id)s."
 
 #: cinder/brick/exception.py:120
 #, python-format
@@ -2764,12 +2891,12 @@ msgstr ""
 
 #: cinder/brick/initiator/connector.py:609
 msgid "We are unable to locate any Fibre Channel devices"
-msgstr ""
+msgstr "Não é possível localizar nenhum dispositivo Fibre Channel"
 
 #: cinder/brick/initiator/connector.py:619
 #, python-format
 msgid "Looking for Fibre Channel dev %(device)s"
-msgstr ""
+msgstr "Procurando dispositivo Fibre Channel %(device)s"
 
 #: cinder/brick/initiator/connector.py:629
 msgid "Fibre Channel volume device not found."
@@ -2788,7 +2915,7 @@ msgstr ""
 #: cinder/brick/initiator/connector.py:658
 #, python-format
 msgid "Multipath device discovered %(device)s"
-msgstr ""
+msgstr "O dispositivo de caminhos múltiplos descobriu %(device)s"
 
 #: cinder/brick/initiator/connector.py:776
 #, python-format
@@ -2827,7 +2954,7 @@ msgstr ""
 
 #: cinder/brick/initiator/linuxfc.py:50 cinder/brick/initiator/linuxfc.py:56
 msgid "systool is not installed"
-msgstr ""
+msgstr "systool não está instalado"
 
 #: cinder/brick/initiator/linuxscsi.py:99
 #: cinder/brick/initiator/linuxscsi.py:107
@@ -2860,7 +2987,7 @@ msgstr ""
 #: cinder/brick/iscsi/iscsi.py:172
 #, python-format
 msgid "Creating iscsi_target for: %s"
-msgstr ""
+msgstr "Criando iscsi_target para: %s"
 
 #: cinder/brick/iscsi/iscsi.py:179
 #, python-format
@@ -2869,10 +2996,10 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
+#, 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"
+msgstr ""
 
 #: cinder/brick/iscsi/iscsi.py:222
 #, python-format
@@ -2880,59 +3007,66 @@ msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
+"Falha ao criar o destino iscsi para o ID de volume:%(vol_id)s. Assegure-"
+"se de que seu arquivo de configuração tgtd contenha 'include "
+"%(volumes_dir)s/*'"
 
 #: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
-msgstr ""
+msgstr "Removendo iscsi_target para: %s"
 
 #: cinder/brick/iscsi/iscsi.py:256
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
+#, 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"
+msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
-msgid "valid iqn needed for show_target"
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
+msgid "valid iqn needed for show_target"
+msgstr "iqn válido necessário para show_target"
+
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
-msgstr ""
+msgstr "Removendo iscsi_target para o volume: %s"
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
-msgstr ""
+msgstr "Criando iscsi_target para o volume: %s"
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:552
+#, python-format
 msgid "Removing iscsi_target: %s"
-msgstr "Reiniciando a instância %s"
+msgstr "Removendo o iscsi_target: %s"
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
-msgstr ""
+msgstr "Falha ao incluir o inicializador iqn %s no destino"
 
 #: cinder/brick/local_dev/lvm.py:75
 msgid "Error creating Volume Group"
@@ -2944,7 +3078,7 @@ msgstr ""
 #: cinder/brick/local_dev/lvm.py:681
 #, python-format
 msgid "Cmd     :%s"
-msgstr ""
+msgstr "Cmd :%s"
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
 #: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:509
@@ -2963,18 +3097,18 @@ msgid "StdErr  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:82
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to locate Volume Group %s"
-msgstr "Não é possível localizar o volume %s"
+msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:157
 msgid "Error querying thin pool about data_percent"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:370
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find VG: %s"
-msgstr "Não é possível desconectar o volume %s"
+msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:420
 msgid ""
@@ -3054,82 +3188,81 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
 #: cinder/common/sqlalchemyutils.py:66
 #: cinder/openstack/common/db/sqlalchemy/utils.py:72
 msgid "Id not in sort_keys; is sort_keys unique?"
-msgstr ""
+msgstr "ID não em sort_keys; sort_keys é exclusivo?"
 
 #: cinder/common/sqlalchemyutils.py:114
 #: cinder/openstack/common/db/sqlalchemy/utils.py:120
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
-msgstr ""
+msgstr "Direção de classificação desconhecida; deve ser 'desc' ou 'asc'"
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
 
 #: cinder/db/sqlalchemy/api.py:65
 msgid "Use of empty request context is deprecated"
-msgstr ""
+msgstr "O uso do contexto vazio de solicitação foi descontinuado"
 
 #: cinder/db/sqlalchemy/api.py:192
 #, python-format
 msgid "Unrecognized read_deleted value '%s'"
-msgstr ""
+msgstr "Valor read_deleted não reconhecido '%s'"
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
-#, fuzzy
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
-msgstr "O status do volume parece estar disponível"
+msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3138,19 +3271,19 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migration.py:37
 msgid "version should be an integer"
-msgstr ""
+msgstr "a versão deve ser um número inteiro"
 
 #: cinder/db/sqlalchemy/migration.py:64
 msgid "Upgrade DB using Essex release first."
-msgstr ""
+msgstr "Faça o upgrade do BD usando a liberação de Essex primeiro."
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/001_cinder_init.py:240
 msgid "Exception while creating table."
-msgstr ""
+msgstr "Exceção ao criar tabela."
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/001_cinder_init.py:269
 msgid "Downgrade from initial Cinder install is unsupported."
-msgstr ""
+msgstr "O downgrade da instalação inicial do Cinder não é suportado."
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:49
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:74
@@ -3162,7 +3295,7 @@ msgstr ""
 #: cinder/db/sqlalchemy/migrate_repo/versions/020_add_volume_admin_metadata_table.py:46
 #, python-format
 msgid "Table |%s| not created!"
-msgstr ""
+msgstr "Tabela |%s| não criada!"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:127
 msgid "Dropping foreign key reservations_ibfk_1 failed."
@@ -3170,31 +3303,31 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:133
 msgid "quota_classes table not dropped"
-msgstr ""
+msgstr "tabela quota_classes não eliminada"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:140
 msgid "quota_usages table not dropped"
-msgstr ""
+msgstr "tabela quota_usages não eliminada"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:147
 msgid "reservations table not dropped"
-msgstr ""
+msgstr "tabela de reservas não eliminada"
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
-msgstr ""
+msgstr "tabela volume_glance_metadata não eliminada"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/008_add_backup.py:68
 msgid "backups table not dropped"
-msgstr ""
+msgstr "tabela de backups não eliminada"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/009_add_snapshot_metadata_table.py:58
 msgid "snapshot_metadata table not dropped"
-msgstr ""
+msgstr "tabela snapshot_metadata não eliminada"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/010_add_transfers_table.py:61
 msgid "transfers table not dropped"
@@ -3287,12 +3420,12 @@ msgstr ""
 
 #: cinder/image/image_utils.py:94 cinder/image/image_utils.py:199
 msgid "'qemu-img info' parsing failed."
-msgstr ""
+msgstr "Falha na análise de 'qemu-img info'."
 
 #: cinder/image/image_utils.py:101
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
-msgstr ""
+msgstr "fmt=%(fmt)s retornado por: %(backing_file)s"
 
 #: cinder/image/image_utils.py:109 cinder/image/image_utils.py:192
 #, python-format
@@ -3322,7 +3455,7 @@ msgstr ""
 #: cinder/image/image_utils.py:206
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
-msgstr ""
+msgstr "fmt=%(fmt)s retornado por: %(backing_file)s"
 
 #: cinder/image/image_utils.py:224
 #, python-format
@@ -3332,7 +3465,7 @@ msgstr ""
 #: cinder/image/image_utils.py:260
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
-msgstr ""
+msgstr "Convertido em %(f1)s, mas o formato agora é %(f2)s"
 
 #: cinder/keymgr/conf_key_mgr.py:78
 msgid ""
@@ -3352,22 +3485,22 @@ msgstr ""
 #: cinder/openstack/common/eventlet_backdoor.py:140
 #, python-format
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
-msgstr ""
+msgstr "Backdoor de Eventlet escutando na porta %(port)s pelo processo %(pid)d"
 
 #: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
-msgstr ""
+msgstr "Exceção original sendo descartada: %s"
 
 #: cinder/openstack/common/excutils.py:91
 #, python-format
 msgid "Unexpected exception occurred %d time(s)... retrying."
-msgstr ""
+msgstr "Exceção não esperada ocorreu %d vez(es)... tentando novamente."
 
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
-msgstr ""
+msgstr "Recarregando arquivo em cache %s"
 
 #: cinder/openstack/common/gettextutils.py:271
 msgid "Message objects do not support addition."
@@ -3387,95 +3520,103 @@ msgstr ""
 #: cinder/openstack/common/imageutils.py:104
 msgid "Snapshot list encountered but no header found!"
 msgstr ""
+"Lista de capturas instantâneas encontradas, mas nenhum cabeçalho "
+"localizado!"
 
 #: cinder/openstack/common/lockutils.py:102
 #, python-format
 msgid "Could not release the acquired lock `%s`"
-msgstr ""
+msgstr "Não foi possível liberar o bloqueio adquirido `%s`"
 
 #: cinder/openstack/common/lockutils.py:189
 #, python-format
 msgid "Got semaphore \"%(lock)s\" for method \"%(method)s\"..."
-msgstr ""
+msgstr "Obteve semáforo \"%(lock)s\" para o método \"%(method)s\"..."
 
 #: cinder/openstack/common/lockutils.py:200
 #, python-format
 msgid "Attempting to grab file lock \"%(lock)s\" for method \"%(method)s\"..."
 msgstr ""
+"Tentando capturar trava de arquivo \"%(lock)s\" para o método "
+"\"%(method)s\"..."
 
 #: cinder/openstack/common/lockutils.py:227
 #, python-format
 msgid "Got file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
+"Obteve bloqueio de arquivo \"%(lock)s\" em %(path)s para o método "
+"\"%(method)s\"..."
 
 #: cinder/openstack/common/lockutils.py:235
 #, python-format
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
+"Bloqueio de arquivo liberado \"%(lock)s\" em %(path)s para o método "
+"\"%(method)s\"..."
 
-#: cinder/openstack/common/log.py:326
-#, fuzzy, python-format
+#: cinder/openstack/common/log.py:327
+#, python-format
 msgid "Deprecated: %s"
-msgstr "recebido %s"
+msgstr "Descontinuado: %s"
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
-msgstr ""
+msgstr "Erro carregando configuração de logging %(log_config)s: %(err_msg)s"
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
-msgstr ""
+msgstr "o recurso syslog deve ser um dos seguintes: %s"
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
-msgstr ""
+msgstr "Chamada fatal para configuração descontinuada: %(msg)s"
 
 #: cinder/openstack/common/loopingcall.py:82
 #, python-format
 msgid "task run outlasted interval by %s sec"
-msgstr ""
+msgstr "a execução da tarefa durou %s segundos mais que o intervalo"
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
-msgstr ""
+msgstr "em uma chamada de laço de duração fixa"
 
 #: cinder/openstack/common/loopingcall.py:129
 #, python-format
 msgid "Dynamic looping call sleeping for %.02f seconds"
-msgstr ""
+msgstr "Chamada de laço dinâmico dormindo por %.02f segundos"
 
 #: cinder/openstack/common/loopingcall.py:136
 msgid "in dynamic looping call"
-msgstr ""
+msgstr "em chamada de laço dinâmico"
 
 #: cinder/openstack/common/periodic_task.py:43
 #, python-format
 msgid "Unexpected argument for periodic task creation: %(arg)s."
-msgstr ""
+msgstr "Argumento inesperado para criação de tarefa periódica: %(arg)s."
 
 #: cinder/openstack/common/periodic_task.py:134
 #, python-format
 msgid "Skipping periodic task %(task)s because its interval is negative"
-msgstr ""
+msgstr "Ignorando tarefa periódica %(task)s porque seu intervalo é negativo"
 
 #: cinder/openstack/common/periodic_task.py:139
 #, python-format
 msgid "Skipping periodic task %(task)s because it is disabled"
-msgstr ""
+msgstr "Ignorando tarefa periódica %(task)s porque ela está desativada"
 
 #: cinder/openstack/common/periodic_task.py:177
 #, python-format
 msgid "Running periodic task %(full_task_name)s"
-msgstr ""
+msgstr "Executando tarefa periódica %(full_task_name)s"
 
 #: cinder/openstack/common/periodic_task.py:186
 #, python-format
 msgid "Error during %(full_task_name)s: %(e)s"
-msgstr ""
+msgstr "Erro durante %(full_task_name)s: %(e)s"
 
 #: cinder/openstack/common/policy.py:149
 #, python-format
@@ -3483,26 +3624,28 @@ msgid ""
 "Inheritance-based rules are deprecated; use the default brain instead of "
 "%s."
 msgstr ""
+"As regras baseadas em herança foram descontinuadas; use o cérebro padrão "
+"em vez de %s."
 
 #: cinder/openstack/common/policy.py:163
 #, python-format
 msgid "Failed to understand rule %(match)r"
-msgstr ""
+msgstr "Falha ao entender a regra %(match)r"
 
 #: cinder/openstack/common/policy.py:173
 #, python-format
 msgid "Inheritance-based rules are deprecated; update _check_%s"
-msgstr ""
+msgstr "As regras baseadas em herança foram descontinuadas; atualize _check_%s"
 
 #: cinder/openstack/common/policy.py:180
 #, python-format
 msgid "No handler for matches of kind %s"
-msgstr ""
+msgstr "Nenhum manipulador para correspondências do tipo %s"
 
 #: cinder/openstack/common/processutils.py:127
 #, python-format
 msgid "Got unknown keyword args to utils.execute: %r"
-msgstr ""
+msgstr "Obteve args de palavra-chave desconhecidos para utils.execute: %r"
 
 #: cinder/openstack/common/processutils.py:142
 #, python-format
@@ -3519,7 +3662,7 @@ msgstr "Resultado foi %s"
 #: cinder/openstack/common/processutils.py:179
 #, python-format
 msgid "%r failed. Retrying."
-msgstr ""
+msgstr "%r falhou. Tentando novamente."
 
 #: cinder/openstack/common/processutils.py:218
 #, python-format
@@ -3528,11 +3671,11 @@ msgstr "Executando o comando (SSH): %s"
 
 #: cinder/openstack/common/processutils.py:220
 msgid "Environment not supported over SSH"
-msgstr ""
+msgstr "Ambiente não suportado sobre SSH"
 
 #: cinder/openstack/common/processutils.py:224
 msgid "process_input not supported over SSH"
-msgstr ""
+msgstr "process_input não suportado sobre SSH"
 
 #: cinder/openstack/common/request_utils.py:66
 #, python-format
@@ -3555,69 +3698,68 @@ msgstr ""
 #: cinder/openstack/common/service.py:269
 #, python-format
 msgid "Caught %s, exiting"
-msgstr ""
+msgstr "%s capturadas, saindo"
 
 #: cinder/openstack/common/service.py:187
 msgid "Exception during rpc cleanup."
-msgstr ""
+msgstr "Exceção durante limpeza de RPC."
 
 #: cinder/openstack/common/service.py:238
 msgid "Parent process has died unexpectedly, exiting"
-msgstr ""
+msgstr "Processo pai saiu inesperadamente, saindo"
 
 #: cinder/openstack/common/service.py:275
-#, fuzzy
 msgid "Unhandled exception"
-msgstr "Exceção interna: %s"
+msgstr "Exceção não manipulada"
 
 #: cinder/openstack/common/service.py:308
 msgid "Forking too fast, sleeping"
-msgstr ""
+msgstr "Bifurcação muito rápida, suspendendo"
 
 #: cinder/openstack/common/service.py:327
 #, python-format
 msgid "Started child %d"
-msgstr ""
+msgstr "Filho %d iniciado"
 
 #: cinder/openstack/common/service.py:337
 #, python-format
 msgid "Starting %d workers"
-msgstr ""
+msgstr "Iniciando %d trabalhadores"
 
 #: cinder/openstack/common/service.py:354
 #, python-format
 msgid "Child %(pid)d killed by signal %(sig)d"
-msgstr ""
+msgstr "%(pid)d filho eliminado pelo sinal %(sig)d"
 
 #: cinder/openstack/common/service.py:358
 #, python-format
 msgid "Child %(pid)s exited with status %(code)d"
-msgstr ""
+msgstr "Filho %(pid)s encerrando com status %(code)d"
 
 #: cinder/openstack/common/service.py:362
 #, python-format
 msgid "pid %d not in child list"
-msgstr ""
+msgstr "pid %d fora da lista de filhos"
 
 #: cinder/openstack/common/service.py:392
 #, python-format
 msgid "Caught %s, stopping children"
-msgstr ""
+msgstr "%s capturado, parando filhos"
 
 #: cinder/openstack/common/service.py:410
 #, python-format
 msgid "Waiting on %d children to exit"
-msgstr ""
+msgstr "Aguardando em %d filhos para sair"
 
 #: cinder/openstack/common/sslutils.py:98
 #, python-format
 msgid "Invalid SSL version : %s"
-msgstr ""
+msgstr "versão SSL inválida: %s"
 
 #: cinder/openstack/common/strutils.py:92
 #, python-format
 msgid "Unrecognized value '%(val)s', acceptable values are: %(acceptable)s"
-msgstr ""
+msgstr "Valor desconhecido '%(val)s', valores aceitáveis são: %(acceptable)s"
 
 #: cinder/openstack/common/strutils.py:202
 #, python-format
@@ -3627,7 +3769,7 @@ msgstr ""
 #: cinder/openstack/common/strutils.py:211
 #, python-format
 msgid "Invalid string format: %s"
-msgstr ""
+msgstr "formato de string inválido: %s"
 
 #: cinder/openstack/common/versionutils.py:69
 #, python-format
@@ -3635,6 +3777,8 @@ msgid ""
 "%(what)s is deprecated as of %(as_of)s in favor of %(in_favor_of)s and "
 "may be removed in %(remove_in)s."
 msgstr ""
+"%(what)s está deprecado desde %(as_of)s em favor de %(in_favor_of)s e "
+"pode ser removido em %(remove_in)s."
 
 #: cinder/openstack/common/versionutils.py:73
 #, python-format
@@ -3642,42 +3786,44 @@ msgid ""
 "%(what)s is deprecated as of %(as_of)s and may be removed in "
 "%(remove_in)s. It will not be superseded."
 msgstr ""
+"%(what)s está deprecado desde %(as_of)s e pode ser removido em "
+"%(remove_in)s. Ele não será substituído."
 
 #: cinder/openstack/common/crypto/utils.py:29
 msgid "An unknown error occurred in crypto utils."
-msgstr ""
+msgstr "Um erro desconhecido ocorreu em crypto utils."
 
 #: cinder/openstack/common/crypto/utils.py:36
 #, python-format
 msgid "Block size of %(given)d is too big, max = %(maximum)d"
-msgstr ""
+msgstr "Tamanho do bloco de %(given)d é muito grande, máximo = %(maximum)d"
 
 #: cinder/openstack/common/crypto/utils.py:45
 #, python-format
 msgid "Length of %(given)d is too long, max = %(maximum)d"
-msgstr ""
+msgstr "Comprimento de %(given)d é muito longo, máximo = %(maximum)d"
 
 #: cinder/openstack/common/db/exception.py:44
 msgid "Invalid Parameter: Unicode is not supported by the current database."
-msgstr ""
+msgstr "Parâmetro Inválido: Unicode não é suportado pelo banco de dados atual."
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:487
 msgid "DB exception wrapped."
-msgstr ""
+msgstr "Exceção de BD incluída."
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:538
 #, python-format
 msgid "Got mysql server has gone away: %s"
-msgstr ""
+msgstr "Obteve servidor mysql ausente: %s"
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:610
 #, python-format
 msgid "SQL connection failed. %s attempts left."
-msgstr ""
+msgstr "Falha na conexão SQL. Restam %s tentativas."
 
 #: cinder/openstack/common/db/sqlalchemy/utils.py:33
 msgid "Sort key supplied was not valid."
-msgstr ""
+msgstr "A chave de classificação fornecida não era válida."
 
 #: cinder/openstack/common/scheduler/filters/capabilities_filter.py:54
 #, python-format
@@ -3696,7 +3842,7 @@ msgstr ""
 #: cinder/openstack/common/scheduler/filters/ignore_attempted_hosts_filter.py:52
 #, python-format
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
-msgstr ""
+msgstr "Host %(host)s %(pass_msg)s. Hosts tentados anteriormente: %(hosts)s"
 
 #: cinder/scheduler/driver.py:69
 msgid "Must implement host_passes_filters"
@@ -3708,11 +3854,11 @@ msgstr ""
 
 #: cinder/scheduler/driver.py:78
 msgid "Must implement a fallback schedule"
-msgstr ""
+msgstr "Deve implementar um planejamento de fallback"
 
 #: cinder/scheduler/driver.py:82
 msgid "Must implement schedule_create_volume"
-msgstr ""
+msgstr "Deve implementar schedule_create_volume"
 
 #: cinder/scheduler/filter_scheduler.py:98
 #, python-format
@@ -3733,7 +3879,7 @@ msgstr ""
 
 #: cinder/scheduler/filter_scheduler.py:156
 msgid "Invalid value for 'scheduler_max_attempts', must be >=1"
-msgstr ""
+msgstr "Valor inválido para 'scheduler_max_attempts'; deve ser >= 1"
 
 #: cinder/scheduler/filter_scheduler.py:174
 #, python-format
@@ -3741,11 +3887,15 @@ msgid ""
 "Error scheduling %(volume_id)s from last vol-service: %(last_host)s : "
 "%(exc)s"
 msgstr ""
+"Erro ao planejar %(volume_id)s do último serviço de volume: %(last_host)s"
+" : %(exc)s"
 
 #: cinder/scheduler/filter_scheduler.py:207
 #, python-format
 msgid "Exceeded max scheduling attempts %(max_attempts)d for volume %(volume_id)s"
 msgstr ""
+"Excedido o número máximo de tentativas de planejamento %(max_attempts)d "
+"para o volume %(volume_id)s"
 
 #: cinder/scheduler/filter_scheduler.py:259
 #, python-format
@@ -3760,19 +3910,19 @@ msgstr ""
 #: cinder/scheduler/host_manager.py:266
 #, python-format
 msgid "Ignoring %(service_name)s service update from %(host)s"
-msgstr ""
+msgstr "Ignorando atualização de serviço %(service_name)s a partir de %(host)s"
 
 #: cinder/scheduler/host_manager.py:271
 #, python-format
 msgid "Received %(service_name)s service update from %(host)s."
-msgstr ""
+msgstr "Atualização do serviço %(service_name)s recebido de %(host)s."
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3801,12 +3951,14 @@ msgstr ""
 #: cinder/scheduler/manager.py:219
 #, python-format
 msgid "Failed to schedule_%(method)s: %(ex)s"
-msgstr ""
+msgstr "Falha no schedule_%(method)s: %(ex)s"
 
 #: cinder/scheduler/scheduler_options.py:68
 #, python-format
 msgid "Could not stat scheduler options file %(filename)s: '%(e)s'"
 msgstr ""
+"Não foi possível realizar stat do arquivo de opções do planejador "
+"%(filename)s: '%(e)s'"
 
 #: cinder/scheduler/scheduler_options.py:78
 #, python-format
@@ -3816,6 +3968,8 @@ msgstr ""
 #: cinder/scheduler/filters/capacity_filter.py:43
 msgid "Free capacity not set: volume node info collection broken."
 msgstr ""
+"Capacidade livre não configurada: a coleta de informações do nó de volume"
+" foi interrompida."
 
 #: cinder/scheduler/filters/capacity_filter.py:57
 #, python-format
@@ -3823,6 +3977,8 @@ msgid ""
 "Insufficient free space for volume creation (requested / avail): "
 "%(requested)s/%(available)s"
 msgstr ""
+"espaço livre insuficiente para a criação de volume (solicitado / "
+"disponível): %(requested)s/%(available)s"
 
 #: cinder/scheduler/flows/create_volume.py:53
 msgid "No volume_id provided to populate a request_spec from"
@@ -3841,9 +3997,9 @@ msgstr ""
 #: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:883
 #, python-format
 msgid "FAKE ISCSI: %s"
-msgstr ""
+msgstr "FAKE ISCSI: %s"
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3855,29 +4011,29 @@ msgstr ""
 #: cinder/tests/fake_driver.py:124 cinder/tests/fake_driver.py:129
 #, python-format
 msgid "LoggingVolumeDriver: %s"
-msgstr ""
+msgstr "LoggingVolumeDriver: %s"
 
 #: cinder/tests/fake_utils.py:70
 #, python-format
 msgid "Faking execution of cmd (subprocess): %s"
-msgstr ""
+msgstr "Execução falsa de cmd (subprocesso): %s"
 
 #: cinder/tests/fake_utils.py:78
 #, python-format
 msgid "Faked command matched %s"
-msgstr ""
+msgstr "Comando falso correspondeu a %s"
 
 #: cinder/tests/fake_utils.py:94
 #, python-format
 msgid "Faked command raised an exception %s"
-msgstr ""
+msgstr "Comando falso levantou uma exceção %s"
 
 #: cinder/tests/fake_utils.py:97
 #, python-format
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
-msgstr ""
+msgstr "Responder ao comando falso é stdout='%(stdout)s' stderr='%(stderr)s'"
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3887,7 +4043,7 @@ msgstr ""
 #: cinder/tests/test_ibm_xiv_ds8k.py:102
 #, python-format
 msgid "Volume not found for instance %(instance_id)s."
-msgstr ""
+msgstr "Volume não localizado para a instância %(instance_id)s."
 
 #: cinder/tests/test_misc.py:58
 #, python-format
@@ -3895,6 +4051,8 @@ msgid ""
 "The following migrations are missing a downgrade:\n"
 "\t%s"
 msgstr ""
+"Está faltando fazer downgrade nas seguintes migrações:\n"
+"\t%s"
 
 #: cinder/tests/test_netapp.py:1327
 msgid "Error not a TypeError."
@@ -3909,49 +4067,55 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
 #: cinder/tests/test_storwize_svc.py:252
 #, python-format
 msgid "unrecognized argument %s"
-msgstr ""
+msgstr "argumento não reconhecido %s"
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
-msgstr ""
+msgstr "Executar comando da CLI: %s"
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
 " stdout: %(stdout)s\n"
 " stderr: %(stderr)s"
 msgstr ""
+"Saída da CLI:\n"
+" stdout: %(stdout)s\n"
+" stderr: %(stderr)s"
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
 " stdout: %(out)s\n"
 " stderr: %(err)s"
 msgstr ""
+"Saída de Exceção da CLI:\n"
+" stdout: %(out)s\n"
+" stderr: %(err)s"
 
 #: cinder/tests/test_volume_types.py:60
 #, python-format
 msgid "Given data: %s"
-msgstr ""
+msgstr "Dados fornecidos: %s"
 
 #: cinder/tests/test_volume_types.py:61
 #, python-format
 msgid "Result data: %s"
-msgstr ""
+msgstr "Dados do resultado: %s"
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
-msgstr ""
+msgstr "Entrada inválida"
 
 #: cinder/tests/brick/test_brick_remotefs.py:99
 msgid "Unexpected call to _execute."
@@ -3962,9 +4126,9 @@ msgid "mount failed."
 msgstr ""
 
 #: cinder/tests/integrated/test_login.py:29
-#, fuzzy, python-format
+#, python-format
 msgid "volume: %s"
-msgstr "Desanexar volume %s"
+msgstr "volume: %s"
 
 #: cinder/tests/integrated/api/client.py:34
 #, python-format
@@ -3973,47 +4137,50 @@ msgid ""
 "Status Code: %(_status)s\n"
 "Body: %(_body)s"
 msgstr ""
+"%(message)s\n"
+"Código de Status: %(_status)s\n"
+"Corpo: %(_body)s"
 
 #: cinder/tests/integrated/api/client.py:44
 msgid "Authentication error"
-msgstr ""
+msgstr "Erro de Autenticação"
 
 #: cinder/tests/integrated/api/client.py:52
 msgid "Authorization error"
-msgstr ""
+msgstr "Erro de autorização"
 
 #: cinder/tests/integrated/api/client.py:60
 msgid "Item not found"
-msgstr ""
+msgstr "Item não localizado"
 
 #: cinder/tests/integrated/api/client.py:97
 #, python-format
 msgid "Doing %(method)s on %(relative_url)s"
-msgstr ""
+msgstr "Fazendo %(method)s em %(relative_url)s"
 
 #: cinder/tests/integrated/api/client.py:100
 #, python-format
 msgid "Body: %s"
-msgstr ""
+msgstr "Corpo: %s"
 
 #: cinder/tests/integrated/api/client.py:124
 #, python-format
 msgid "%(auth_uri)s => code %(http_status)s"
-msgstr ""
+msgstr "%(auth_uri)s => código %(http_status)s"
 
 #: cinder/tests/integrated/api/client.py:147
 #, python-format
 msgid "%(relative_uri)s => code %(http_status)s"
-msgstr ""
+msgstr "%(relative_uri)s => código %(http_status)s"
 
 #: cinder/tests/integrated/api/client.py:158
 msgid "Unexpected status code"
-msgstr ""
+msgstr "Código de status inesperado"
 
 #: cinder/tests/integrated/api/client.py:165
 #, python-format
 msgid "Decoding JSON: %s"
-msgstr ""
+msgstr "Decodificando JSON: %s"
 
 #: cinder/tests/zonemanager/test_brcd_fc_zone_driver.py:124
 #, python-format
@@ -4051,12 +4218,12 @@ msgstr ""
 
 #: cinder/transfer/api.py:102 cinder/volume/api.py:350
 msgid "status must be available"
-msgstr ""
+msgstr "o status deve estar disponível"
 
 #: cinder/transfer/api.py:119
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to create transfer record for %s"
-msgstr "Falha ao obter metadados para o ip: %s"
+msgstr ""
 
 #: cinder/transfer/api.py:136
 #, python-format
@@ -4069,6 +4236,8 @@ msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG volume "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
+"Cota excedida para %(s_pid)s, tentou criar %(s_size)sG volume "
+"(%(d_consumed)dG de %(d_quota)dG já consumido)"
 
 #: cinder/transfer/api.py:182
 #, python-format
@@ -4103,7 +4272,7 @@ msgstr ""
 
 #: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
-msgstr ""
+msgstr "Falha ao atualizar cota para excluir volume"
 
 #: cinder/volume/api.py:228
 #, python-format
@@ -4117,26 +4286,25 @@ msgstr ""
 #: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
-msgstr ""
+msgstr "O volume ainda possui %d capturas instantâneas dependentes"
 
 #: cinder/volume/api.py:293 cinder/volume/api.py:333
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
-msgstr ""
+msgstr "Procurando por: %s"
 
 #: cinder/volume/api.py:353
 msgid "already attached"
-msgstr ""
+msgstr "já conectado"
 
 #: cinder/volume/api.py:360
 msgid "status must be in-use to detach"
 msgstr ""
 
 #: cinder/volume/api.py:371
-#, fuzzy
 msgid "Volume status must be available to reserve"
-msgstr "O status do volume parece estar disponível"
+msgstr "O status do volume deve estar disponível para reserva"
 
 #: cinder/volume/api.py:447
 msgid "Snapshot cannot be created while volume is migrating"
@@ -4144,7 +4312,7 @@ msgstr ""
 
 #: cinder/volume/api.py:451
 msgid "must be available"
-msgstr ""
+msgstr "deve estar disponível"
 
 #: cinder/volume/api.py:473
 #, python-format
@@ -4152,6 +4320,8 @@ msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
+"Cota excedida para %(s_pid)s, tentou criar captura instantânea de "
+"%(s_size)sG (%(d_consumed)dG de %(d_quota)dG já consumido)"
 
 #: cinder/volume/api.py:485
 #, python-format
@@ -4159,32 +4329,32 @@ msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
+"Cota excedida para %(s_pid)s, tentou criar captura instantânea "
+"(%(d_consumed)d capturas instantâneas já consumidas)"
 
 #: cinder/volume/api.py:536
-#, fuzzy
 msgid "Volume Snapshot status must be available or error"
-msgstr "O status do volume parece estar disponível"
+msgstr "O status da Captura Instantânea do Volume deve ser disponível ou erro"
 
 #: cinder/volume/api.py:564 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
-msgstr ""
+msgstr "Chave da propriedade de metadados em branco"
 
 #: cinder/volume/api.py:568
 msgid "Metadata property key greater than 255 characters"
-msgstr ""
+msgstr "Chave da propriedade de metadados com mais de 255 caracteres"
 
 #: cinder/volume/api.py:572
 msgid "Metadata property value greater than 255 characters"
-msgstr ""
+msgstr "Valor da propriedade de metadados com mais de 255 caracteres"
 
 #: cinder/volume/api.py:703 cinder/volume/api.py:777
-#, fuzzy
 msgid "Volume status must be available/in-use."
-msgstr "O status do volume parece estar disponível"
+msgstr "O status do volume deve ser disponível/em uso."
 
 #: cinder/volume/api.py:706
 msgid "Volume status is in-use."
-msgstr ""
+msgstr "O status do volume é em uso."
 
 #: cinder/volume/api.py:735
 msgid "Volume status must be available to extend."
@@ -4212,73 +4382,73 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
 #: cinder/volume/driver.py:195 cinder/volume/drivers/netapp/nfs.py:176
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
-msgstr ""
+msgstr "Recuperando de uma execução com falha. Tente o número %s"
 
 #: cinder/volume/driver.py:278
 #, python-format
@@ -4298,27 +4468,27 @@ msgstr ""
 #: cinder/volume/driver.py:335
 #, python-format
 msgid "copy_image_to_volume %s."
-msgstr ""
+msgstr "copy_image_to_volume %s."
 
 #: cinder/volume/driver.py:352
 #, python-format
 msgid "copy_volume_to_image %s."
-msgstr ""
+msgstr "copy_volume_to_image %s."
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4333,18 +4503,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr "volume %s: removendo export"
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4367,9 +4537,9 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
-msgstr ""
+msgstr "ISCSI provider_location não armazenado, usando descoberta"
 
 #: cinder/volume/driver.py:652
 #, python-format
@@ -4382,27 +4552,27 @@ msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
 #: cinder/volume/driver.py:701
-#, fuzzy, python-format
+#, python-format
 msgid "Could not find iSCSI export for volume %s"
-msgstr "Não é possível localizar o volume %s"
+msgstr "Não foi possível localizar iSCSI export para o volume %s"
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
-msgstr ""
+msgstr "Descoberta ISCSI: Localizado %s"
 
 #: cinder/volume/driver.py:802
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4410,8 +4580,15 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
+msgstr "O driver deve implementar initialize_connection"
+
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
 msgstr ""
 
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
@@ -4419,6 +4596,8 @@ msgstr ""
 #, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
 msgstr ""
+"Ignorando remove_export. Nenhum iscsi_target provisionado para o volume: "
+"%s"
 
 #: cinder/volume/iscsi.py:80
 #, python-format
@@ -4426,21 +4605,23 @@ msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
 msgstr ""
+"Ignorando remove_export. Nenhum iscsi_target está exportado atualmente "
+"para o volume: %s"
 
 #: cinder/volume/iscsi.py:100
 msgid "Detected inconsistency in provider_location id"
-msgstr ""
+msgstr "Inconsistência detectada no ID provider_location"
 
 #: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:572
 #: cinder/volume/drivers/huawei/rest_common.py:1225
 #, python-format
 msgid "%s"
-msgstr ""
+msgstr "%s"
 
 #: cinder/volume/iscsi.py:184
 #, python-format
 msgid "Symbolic link %s not found"
-msgstr ""
+msgstr "Link simbólico %s não localizado"
 
 #: cinder/volume/iscsi.py:251
 #, python-format
@@ -4450,288 +4631,285 @@ msgstr ""
 #: cinder/volume/iscsi.py:252
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
+msgstr "Ignorando ensure_export. Nenhuma provisão iscsi_target para o volume: %s"
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
+"O caminho do driver %s foi descontinuado, atualize sua configuração para "
+"o novo caminho."
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr "Re-exportando %s volumes"
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr "volume %s: ignorando export"
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
-msgstr ""
+msgstr "Continuando quaisquer operações de exclusão em andamento"
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
-msgstr ""
+msgstr "Continuando a exclusão no volume: %s"
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr "volume %s: removendo"
 
-#: cinder/volume/manager.py:390
-#, fuzzy
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
-msgstr "O volume não pertence à este node"
+msgstr "o volume não é local para este nó"
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
-msgstr ""
+msgstr "Falha ao atualizar usos de exclusão de volume"
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr "volume %s: remoção realizada com sucesso"
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
-msgstr ""
+msgstr "captura instantânea %s: criando"
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
-msgstr ""
+msgstr "captura instantânea %s: criada com êxito"
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
-msgstr ""
+msgstr "captura instantânea %s: excluindo"
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
-msgstr ""
+msgstr "Falha ao atualizar usos de exclusão de captura instantânea"
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
-msgstr ""
+msgstr "captura instantânea %s: excluída com êxito"
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
-msgstr ""
+msgstr "sendo anexado por outra instância"
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
+"Volume %(volume_id)s transferido por upload para a imagem (%(image_id)s) "
+"com êxito"
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
-msgstr ""
+msgstr "Atualizando status do volume"
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
-msgstr ""
+msgstr "Notificação {%s} recebida"
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4747,13 +4925,13 @@ msgstr ""
 #: cinder/volume/volume_types.py:43
 #, python-format
 msgid "DB error: %s"
-msgstr ""
+msgstr "Erro de BD: %s"
 
 #: cinder/volume/qos_specs.py:123 cinder/volume/qos_specs.py:140
 #: cinder/volume/qos_specs.py:272 cinder/volume/volume_types.py:52
 #: cinder/volume/volume_types.py:99
 msgid "id cannot be None"
-msgstr ""
+msgstr "id não pode ser Nenhum"
 
 #: cinder/volume/qos_specs.py:156
 #, python-format
@@ -4784,19 +4962,19 @@ msgstr ""
 
 #: cinder/volume/qos_specs.py:284 cinder/volume/volume_types.py:111
 msgid "name cannot be None"
-msgstr ""
+msgstr "o nome não pode ser Nenhum"
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
-msgstr ""
+msgstr "Executando exclusão segura no volume: %s"
 
 #: cinder/volume/volume_types.py:130
 #, python-format
@@ -4804,12 +4982,14 @@ msgid ""
 "Default volume type is not found, please check default_volume_type "
 "config: %s"
 msgstr ""
+"O tipo de volume padrão não foi localizado, verifique a configuração de "
+"default_volume_type: %s"
 
 #: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:284
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
-#, fuzzy, python-format
+#, python-format
 msgid "Creating clone of volume: %s"
-msgstr "Criar volume de %s GB"
+msgstr "Criando clone de volume: %s"
 
 #: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
@@ -4919,11 +5099,11 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
-#, fuzzy, python-format
+#, python-format
 msgid "Error running SSH command: %s"
-msgstr "Erro inesperado ao executar o comando."
+msgstr "Erro ao executar o comando SSH: %s"
 
 #: cinder/volume/drivers/eqlx.py:282
 #, python-format
@@ -4999,219 +5179,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
-msgstr ""
+msgstr "Não há nenhum arquivo de configuração do Gluster configurado (%s)"
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
-msgstr ""
+msgstr "O arquivo de configuração do Gluster em %(config)s não existe"
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
-msgstr ""
+msgstr "mount.glusterfs não está instalado"
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
-msgstr ""
+msgstr "cast efetuado para %s"
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
-msgstr ""
+msgstr "O volume %s não possui provider_location especificado, ignorando"
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
-msgstr ""
+msgstr "Exceção durante a montagem de %s"
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5233,7 +5413,7 @@ msgstr ""
 #: cinder/volume/drivers/lvm.py:246
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
-msgstr ""
+msgstr "captura instantânea: %s não localizado, ignorando operações de exclusão"
 
 #: cinder/volume/drivers/lvm.py:347
 #, python-format
@@ -5276,19 +5456,19 @@ msgid " but size is now %d"
 msgstr ""
 
 #: cinder/volume/drivers/nfs.py:380
-#, fuzzy, python-format
+#, python-format
 msgid "%s is already mounted"
-msgstr "group %s já existe"
+msgstr "%s já está montado"
 
 #: cinder/volume/drivers/nfs.py:432
 #, python-format
 msgid "There's no NFS config file configured (%s)"
-msgstr ""
+msgstr "Não há nenhum arquivo de configuração do NFS configurado (%s)"
 
 #: cinder/volume/drivers/nfs.py:437
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
-msgstr ""
+msgstr "O arquivo de configuração do NFS em %(config)s não existe"
 
 #: cinder/volume/drivers/nfs.py:442
 #, python-format
@@ -5320,175 +5500,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:212
+#, python-format
 msgid "error opening rbd image %s"
-msgstr "Desanexar volume %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
-msgstr ""
+msgstr "erro ao atualizar estatísticas de volume"
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
-msgstr ""
+msgstr "Não armazenado em rbd"
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
-msgstr ""
+msgstr "Componentes em branco"
 
-#: cinder/volume/drivers/rbd.py:718
-#, fuzzy
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
-msgstr "instância %s: fazendo um snapshot"
+msgstr "Não uma captura instantânea de rbd"
 
-#: cinder/volume/drivers/rbd.py:730
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:731
+#, python-format
 msgid "not cloneable: %s"
-msgstr "resposta %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
-msgstr ""
+msgstr "%s está em um cluster ceph diferente"
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:754
+#, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
-msgstr "Não é possível localizar o volume %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5496,39 +5675,39 @@ msgstr ""
 
 #: cinder/volume/drivers/scality.py:67
 msgid "Value required for 'scality_sofs_config'"
-msgstr ""
+msgstr "Valor necessário para 'scality_sofs_config'"
 
 #: cinder/volume/drivers/scality.py:78
 #, python-format
 msgid "Cannot access 'scality_sofs_config': %s"
-msgstr ""
+msgstr "Não é possível acessar 'scality_sofs_config': %s"
 
 #: cinder/volume/drivers/scality.py:84
 msgid "Cannot execute /sbin/mount.sofs"
-msgstr ""
+msgstr "Não é possível executar /sbin/mount.sofs"
 
 #: cinder/volume/drivers/scality.py:105
 msgid "Cannot mount Scality SOFS, check syslog for errors"
-msgstr ""
+msgstr "Não é possível montar Scality SOFS, verifique os erros no syslog"
 
 #: cinder/volume/drivers/scality.py:139
 #, python-format
 msgid "Cannot find volume dir for Scality SOFS at '%s'"
-msgstr ""
+msgstr "Não é possível localizar o diretório do volume para Scality SOFS em '%s'"
 
 #: cinder/volume/drivers/sheepdog.py:59
 #, python-format
 msgid "Sheepdog is not working: %s"
-msgstr ""
+msgstr "Sheepdog não está funcionando: %s"
 
 #: cinder/volume/drivers/sheepdog.py:64
 msgid "Sheepdog is not working"
-msgstr ""
+msgstr "Sheepdog não está funcionando"
 
 #: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
-msgstr ""
+msgstr "Carga útil para chamada API SolidFire: %s"
 
 #: cinder/volume/drivers/solidfire.py:149
 #, python-format
@@ -5557,54 +5736,55 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
-msgstr ""
+msgstr "Chamada para json.loads() levantou uma exceção: %s"
 
 #: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
-msgstr ""
+msgstr "Resultado da chamada API SolidFire: %s"
 
 #: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
-msgstr ""
+msgstr "Operação de clone encontrada: %s"
 
 #: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
+"Aguardando operação pendente antes de tentar novamente a captura "
+"instantânea: %s"
 
 #: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
-msgstr ""
+msgstr "xDBVersionMismatch detectado, nova tentativa %s de 5"
 
 #: cinder/volume/drivers/solidfire.py:200
 #: cinder/volume/drivers/solidfire.py:269
 #: cinder/volume/drivers/solidfire.py:364
-#, fuzzy, python-format
+#, python-format
 msgid "API response: %s"
-msgstr "resposta %s"
+msgstr "Resposta da API: %s"
 
 #: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
-msgstr ""
+msgstr "Conta solidfire localizada: %s"
 
 #: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
-msgstr ""
+msgstr "Conta solidfire: %s não existe; crie-a..."
 
 #: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
-msgstr ""
+msgstr "Falha ao recuperar o SolidFire-ID do volume: %s em get_by_account!"
 
 #: cinder/volume/drivers/solidfire.py:396
-#, fuzzy
 msgid "Failed to get model update from clone"
-msgstr "Falha ao obter metadados para o ip: %s"
+msgstr "Falha ao obter atualização de modelo a partir do clone"
 
 #: cinder/volume/drivers/solidfire.py:408
 #, python-format
@@ -5614,7 +5794,7 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
-msgstr ""
+msgstr "Mais de uma pré-configuração válida foi detectada, usando %s"
 
 #: cinder/volume/drivers/solidfire.py:458
 #, python-format
@@ -5624,26 +5804,26 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
-msgstr ""
+msgstr "VolumeID de SolidFire %(sfid)s mapeado para o ID de cinder %(uuid)s."
 
 #: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
-msgstr ""
+msgstr "Volume %s não localizado no cluster do SF."
 
 #: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
-msgstr ""
+msgstr "Localizados %(count)s volumes mapeados para o ID: %(uuid)s."
 
 #: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
-msgstr ""
+msgstr "Insira SolidFire delete_volume..."
 
 #: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
-msgstr ""
+msgstr "A conta para o ID do Volume %s não foi localizada no SolidFire Cluster!"
 
 #: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
@@ -5656,23 +5836,23 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
-msgstr ""
+msgstr "O ID do volume %s não foi localizado no SolidFire Cluster!"
 
 #: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
-msgstr ""
+msgstr "Saindo de SolidFire delete_volume"
 
 #: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
-msgstr ""
+msgstr "Executando SolidFire ensure_export..."
 
 #: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
-msgstr ""
+msgstr "Executando SolidFire create_export..."
 
 #: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
@@ -5684,31 +5864,30 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
-msgstr ""
+msgstr "Atualizando informações de status do cluster"
 
 #: cinder/volume/drivers/solidfire.py:671
-#, fuzzy
 msgid "Failed to get updated stats"
-msgstr "Começando a terminar instâncias"
+msgstr "Falha ao obter estatísticas atualizadas"
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
 #: cinder/volume/drivers/zadara.py:236
 #, python-format
 msgid "Sending %(method)s to %(url)s. Body \"%(body)s\""
-msgstr ""
+msgstr "Enviando %(method)s para %(url)s. Corpo \"%(body)s\""
 
 #: cinder/volume/drivers/zadara.py:260
 #, python-format
 msgid "Operation completed. %(data)s"
-msgstr ""
+msgstr "Operação concluída. %(data)s"
 
 #: cinder/volume/drivers/zadara.py:357
 #, python-format
@@ -5718,7 +5897,7 @@ msgstr ""
 #: cinder/volume/drivers/zadara.py:408 cinder/volume/drivers/zadara.py:531
 #, python-format
 msgid "Volume %(name)s could not be found. It might be already deleted"
-msgstr ""
+msgstr "O volume %(name)s não pôde ser localizado. Ele pode já ter sido excluído"
 
 #: cinder/volume/drivers/zadara.py:438
 #, python-format
@@ -5759,7 +5938,7 @@ msgstr ""
 #: cinder/volume/drivers/zadara.py:614
 #, python-format
 msgid "Attach properties: %(properties)s"
-msgstr ""
+msgstr "Anexar propriedades: %(properties)s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:125
 #, python-format
@@ -5767,22 +5946,22 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
-msgstr ""
+msgstr "Não foi possível localizar iSCSI export para o volume %s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
-#, fuzzy, python-format
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
+#, python-format
 msgid "Cannot find device number for volume %s"
-msgstr "Não é possível localizar o volume %s"
+msgstr "Não é possível localizar o número do dispositivo para o volume %s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
-#, fuzzy, python-format
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
+#, python-format
 msgid "Found iSCSI endpoint: %s"
-msgstr "NotFound lançado: %s"
+msgstr "Terminal iSCSI localizado: %s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:209
 #, python-format
@@ -5799,21 +5978,23 @@ msgid ""
 "Module PyWBEM not installed.  Install PyWBEM using the python-pywbem "
 "package."
 msgstr ""
+"Módulo PyWBEM não instalado. Instale o PyWBEM usando o pacote python-"
+"pywbem."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:82
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:125
 msgid "Entering create_volume."
-msgstr ""
+msgstr "Inserindo create_volume."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:86
-#, fuzzy, python-format
+#, python-format
 msgid "Create Volume: %(volume)s  Size: %(size)lu"
-msgstr "volume %(vol_name)s: criando lv com tamanho %(vol_size)sG"
+msgstr "Criar Volume: %(volume)s  Tamanho: %(size)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:94
 #, python-format
 msgid "Create Volume: %(volume)s  Storage type: %(storage_type)s"
-msgstr ""
+msgstr "Criar Volume: %(volume)s  Tipo de armazenamento: %(storage_type)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:101
 #, python-format
@@ -5821,6 +6002,8 @@ msgid ""
 "Create Volume: %(volume)s  Pool: %(pool)s  Storage System: "
 "%(storage_system)s"
 msgstr ""
+"Criar Volume: %(volume)s  Conjunto: %(pool)s  Sistema de Armazenamento: "
+"%(storage_system)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:110
 #, python-format
@@ -5828,6 +6011,8 @@ msgid ""
 "Error Create Volume: %(volumename)s. Storage Configuration Service not "
 "found for pool %(storage_type)s."
 msgstr ""
+"Erro ao Criar Volume: %(volumename)s. Serviço de Configuração de "
+"Armazenamento não localizado para o conjunto %(storage_type)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:120
 #, python-format
@@ -5840,7 +6025,7 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_smis_common.py:136
 #, python-format
 msgid "Create Volume: %(volumename)s  Return code: %(rc)lu"
-msgstr ""
+msgstr "Criar Volume: %(volumename)s  Código de Retorno: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:143
 #, python-format
@@ -5848,6 +6033,8 @@ msgid ""
 "Error Create Volume: %(volumename)s.  Return code: %(rc)lu.  Error: "
 "%(error)s"
 msgstr ""
+"Erro ao Criar Volume: %(volumename)s.  Código de Retorno: %(rc)lu.  Erro:"
+" %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:164
 #, python-format
@@ -5859,7 +6046,7 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_smis_common.py:176
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:348
 msgid "Entering create_volume_from_snapshot."
-msgstr ""
+msgstr "Inserindo create_volume_from_snapshot."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:181
 #, python-format
@@ -5867,6 +6054,8 @@ msgid ""
 "Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s"
 msgstr ""
+"Criar Volume a partir da Captura Instantânea: Volume: %(volumename)s  "
+"Captura Instantânea: %(snapshotname)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:191
 #, python-format
@@ -5875,6 +6064,9 @@ msgid ""
 "%(snapshotname)s  Snapshot Instance: %(snapshotinstance)s  Storage "
 "System: %(storage_system)s."
 msgstr ""
+"Criar Volume a partir da Captura Instantânea: Volume: %(volumename)s  "
+"Captura Instantânea: %(snapshotname)s  Instância de Captura Instantânea: "
+"%(snapshotinstance)s  Sistema de Armazenamento: %(storage_system)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:201
 #, python-format
@@ -5882,6 +6074,9 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s. Create Volume from Snapshot is NOT supported on VMAX."
 msgstr ""
+"Erro ao Criar Volume a partir da Captura Instantânea: Volume: "
+"%(volumename)s  Captura Instantânea: %(snapshotname)s. Criar Volume a "
+"partir da Captura Instantânea NÃO é suportado no VMAX."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:212
 #, python-format
@@ -5890,6 +6085,10 @@ msgid ""
 "%(snapshotname)s. Cannot find Replication Service to create volume from "
 "snapshot."
 msgstr ""
+"Erro ao Criar Volume a partir da Captura Instantânea: Volume: "
+"%(volumename)s  Captura Instantânea: %(snapshotname)s. Não é possível "
+"localizar o Serviço de Replicação para criar volume a partir da captura "
+"instantânea."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:221
 #, python-format
@@ -5899,6 +6098,10 @@ msgid ""
 "%(service)s  ElementName: %(elementname)s  SyncType: 8  SourceElement: "
 "%(sourceelement)s"
 msgstr ""
+"Criar Volume a partir da Captura Instantânea: Volume: %(volumename)s  "
+"Captura Instantânea: %(snapshotname)s  Método: CreateElementReplica  "
+"ReplicationService: %(service)s  ElementName: %(elementname)s  SyncType: "
+"8  SourceElement: %(sourceelement)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:242
 #, python-format
@@ -5906,6 +6109,9 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  "
 "Snapshot:%(snapshotname)s.  Return code: %(rc)lu.Error: %(error)s"
 msgstr ""
+"Erro ao Criar Volume a partir da Captura Instantânea: Volume: "
+"%(volumename)s  Captura Instantânea:%(snapshotname)s.  Código de retorno:"
+" %(rc)lu. Erro: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:268
 #, python-format
@@ -5914,6 +6120,9 @@ msgid ""
 "%(snapshotname)s.  Successfully clone volume from snapshot.  Finding the "
 "clone relationship."
 msgstr ""
+"Criar Volume a partir da Captura Instantânea: Volume: %(volumename)s  "
+"Captura Instantânea: %(snapshotname)s.  Volume de clone bem-sucedido a "
+"partir da captura instantânea. Localizando o relacionamento de clone."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:280
 #, python-format
@@ -5923,6 +6132,10 @@ msgid ""
 "ModifyReplicaSynchronization ReplicationService: %(service)s  Operation: "
 "8  Synchronization: %(sync_name)s"
 msgstr ""
+"Criar Volume a partir da Captura Instantânea: Volume: %(volumename)s  "
+"Captura Instantânea: %(snapshotname)s.  Remova o relacionamento de clone."
+" Método: ModifyReplicaSynchronization ReplicationService: %(service)s  "
+"Operação: 8  Sincronização: %(sync_name)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:296
 #, python-format
@@ -5930,6 +6143,8 @@ msgid ""
 "Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu"
 msgstr ""
+"Criar Volume a partir da Captura Instantânea: Volume: %(volumename)s  "
+"Captura Instantânea: %(snapshotname)s  Código de Retorno: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:305
 #, python-format
@@ -5937,6 +6152,9 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s.  Return code: %(rc)lu.  Error: %(error)s"
 msgstr ""
+"Erro ao Criar Volume a partir da Captura Instantânea: Volume: "
+"%(volumename)s  Captura Instantânea:%(snapshotname)s.  Código de retorno:"
+" %(rc)lu.Erro: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:317
 #, python-format
@@ -5944,10 +6162,12 @@ msgid ""
 "Leaving create_volume_from_snapshot: Volume: %(volumename)s Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu."
 msgstr ""
+"Saindo de create_volume_from_snapshot: Volume: %(volumename)s Captura "
+"Instantânea: %(snapshotname)s  Código de Retorno: %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:328
 msgid "Entering create_cloned_volume."
-msgstr ""
+msgstr "Inserindo create_cloned_volume."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:333
 #, python-format
@@ -5955,6 +6175,8 @@ msgid ""
 "Create a Clone from Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s"
 msgstr ""
+"Criar um Clone a partir do Volume: Volume: %(volumename)s  Volume de "
+"Origem: %(srcname)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:343
 #, python-format
@@ -5962,6 +6184,9 @@ msgid ""
 "Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
 "  Source Instance: %(src_instance)s  Storage System: %(storage_system)s."
 msgstr ""
+"Criar Volume Clonado: Volume: %(volumename)s  Volume de Origem: "
+"%(srcname)s  Instância de Origem: %(src_instance)s  Sistema de "
+"Armazenamento: %(storage_system)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:353
 #, python-format
@@ -5969,6 +6194,9 @@ msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s. Cannot find Replication Service to create cloned volume."
 msgstr ""
+"Erro ao Criar Volume Clonado: Volume: %(volumename)s  Volume de Origem: "
+"%(srcname)s. Não é possível localizar o Serviço de Replicação para criar "
+"volume clonado."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:362
 #, python-format
@@ -5978,6 +6206,10 @@ msgid ""
 "ElementName: %(elementname)s  SyncType: 8  SourceElement: "
 "%(sourceelement)s"
 msgstr ""
+"Criar Volume Clonado: Volume: %(volumename)s  Volume de Origem: "
+"%(srcname)s  Método: CreateElementReplica  ReplicationService: "
+"%(service)s  ElementName: %(elementname)s  SyncType: 8  SourceElement: "
+"%(sourceelement)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:383
 #, python-format
@@ -5985,6 +6217,8 @@ msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source "
 "Volume:%(srcname)s.  Return code: %(rc)lu.Error: %(error)s"
 msgstr ""
+"Erro ao Criar Volume Clonado: Volume: %(volumename)s  Volume de "
+"Origem:%(srcname)s.  Código de Retorno: %(rc)lu.Erro: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:409
 #, python-format
@@ -5993,6 +6227,9 @@ msgid ""
 "  Successfully cloned volume from source volume.  Finding the clone "
 "relationship."
 msgstr ""
+"Criar Volume Clonado: Volume: %(volumename)s  Volume de Origem: "
+"%(srcname)s.  Volume clonado com êxito a partir do volume de origem. "
+"Localizando o relacionamento de clone."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:421
 #, python-format
@@ -6002,6 +6239,10 @@ msgid ""
 "ReplicationService: %(service)s  Operation: 8  Synchronization: "
 "%(sync_name)s"
 msgstr ""
+"Criar Volume Clonado: Volume: %(volumename)s  Volume de Origem: "
+"%(srcname)s.  Remova o relacionamento de clone. Método: "
+"ModifyReplicaSynchronization ReplicationService: %(service)s  Operação: 8"
+"  Sincronização: %(sync_name)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:437
 #, python-format
@@ -6009,6 +6250,8 @@ msgid ""
 "Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
 "  Return code: %(rc)lu"
 msgstr ""
+"Criar Volume Clonado: Volume: %(volumename)s  Volume de Origem: "
+"%(srcname)s  Código de retorno: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:446
 #, python-format
@@ -6016,6 +6259,8 @@ msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s.  Return code: %(rc)lu.  Error: %(error)s"
 msgstr ""
+"Erro ao Criar Volume Clonado: Volume: %(volumename)s  Volume de Origem: "
+"%(srcname)s.  Código de Retorno: %(rc)lu.  Erro: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:458
 #, python-format
@@ -6023,21 +6268,23 @@ msgid ""
 "Leaving create_cloned_volume: Volume: %(volumename)s Source Volume: "
 "%(srcname)s  Return code: %(rc)lu."
 msgstr ""
+"Saindo de create_cloned_volume: Volume: %(volumename)s Volume de Origem: "
+"%(srcname)s  Código de retorno: %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:469
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:178
 msgid "Entering delete_volume."
-msgstr ""
+msgstr "Inserindo delete_volume."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:471
 #, python-format
 msgid "Delete Volume: %(volume)s"
-msgstr ""
+msgstr "Excluir Volume: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:478
 #, python-format
 msgid "Volume %(name)s not found on the array. No volume to delete."
-msgstr ""
+msgstr "Volume %(name)s não localizado na matriz. Nenhum volume para excluir."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:488
 #, python-format
@@ -6045,11 +6292,13 @@ msgid ""
 "Error Delete Volume: %(volumename)s. Storage Configuration Service not "
 "found."
 msgstr ""
+"Erro ao Excluir Volume: %(volumename)s. Serviço de Configuração de "
+"Armazenamento não localizado."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:496
 #, python-format
 msgid "Delete Volume: %(name)s  DeviceID: %(deviceid)s"
-msgstr ""
+msgstr "Excluir Volume: %(name)s  DeviceID: %(deviceid)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:500
 #, python-format
@@ -6057,6 +6306,8 @@ msgid ""
 "Delete Volume: %(name)s  Method: EMCReturnToStoragePool ConfigServic: "
 "%(service)s  TheElement: %(vol_instance)s"
 msgstr ""
+"Excluir Volume: %(name)s  Método: EMCReturnToStoragePool ConfigServic: "
+"%(service)s  TheElement: %(vol_instance)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:514
 #, python-format
@@ -6064,28 +6315,32 @@ msgid ""
 "Error Delete Volume: %(volumename)s.  Return code: %(rc)lu.  Error: "
 "%(error)s"
 msgstr ""
+"Erro ao Excluir Volume: %(volumename)s.  Código de retorno: %(rc)lu.  "
+"Erro: %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:523
 #, python-format
 msgid "Leaving delete_volume: %(volumename)s  Return code: %(rc)lu"
-msgstr ""
+msgstr "Saindo de delete_volume: %(volumename)s  Código de retorno: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:530
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:275
 msgid "Entering create_snapshot."
-msgstr ""
+msgstr "Inserindo create_snapshot."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:534
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:278
 #, python-format
 msgid "Create snapshot: %(snapshot)s: volume: %(volume)s"
-msgstr ""
+msgstr "Criar captura instantânea: %(snapshot)s: volume: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:544
 #: cinder/volume/drivers/emc/emc_smis_common.py:972
 #, python-format
 msgid "Device ID: %(deviceid)s: Storage System: %(storagesystem)s"
 msgstr ""
+"ID do Dispositivo: %(deviceid)s: Sistema de Armazenamento: "
+"%(storagesystem)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:551
 #: cinder/volume/drivers/emc/emc_smis_common.py:553
@@ -6093,6 +6348,8 @@ msgstr ""
 #, python-format
 msgid "Cannot find Replication Service to create snapshot for volume %s."
 msgstr ""
+"Não é possível localizar o Serviço de Replicação para criar captura "
+"instantânea para o volume %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:558
 #, python-format
@@ -6101,6 +6358,10 @@ msgid ""
 "Source: %(volume)s  Replication Service: %(service)s  ElementName: "
 "%(elementname)s  Sync Type: 7  SourceElement: %(sourceelement)s."
 msgstr ""
+"Criar Captura Instantânea:  Método: CreateElementReplica: Destino: "
+"%(snapshot)s  Origem: %(volume)s  Serviço de Replicação: %(service)s  "
+"ElementName: %(elementname)s  Tipo de Sincronização: 7  SourceElement: "
+"%(sourceelement)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:574
 #, python-format
@@ -6108,6 +6369,8 @@ msgid ""
 "Create Snapshot: Volume: %(volumename)s  Snapshot: %(snapshotname)s  "
 "Return code: %(rc)lu"
 msgstr ""
+"Criar Captura Instantânea: Volume: %(volumename)s  Captura Instantânea: "
+"%(snapshotname)s  Código de Retorno: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:583
 #, python-format
@@ -6122,17 +6385,19 @@ msgid ""
 "Leaving create_snapshot: Snapshot: %(snapshot)s Volume: %(volume)s  "
 "Return code: %(rc)lu."
 msgstr ""
+"Saindo de create_snapshot: Captura Instantânea: %(snapshot)s Volume: "
+"%(volume)s  Código de retorno: %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:613
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:302
 msgid "Entering delete_snapshot."
-msgstr ""
+msgstr "Inserindo delete_snapshot."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:617
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:306
 #, python-format
 msgid "Delete Snapshot: %(snapshot)s: volume: %(volume)s"
-msgstr ""
+msgstr "Excluir Captura Instantânea: %(snapshot)s: volume: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:623
 #, python-format
@@ -6140,6 +6405,8 @@ msgid ""
 "Delete Snapshot: %(snapshot)s: volume: %(volume)s. Finding "
 "StorageSychronization_SV_SV."
 msgstr ""
+"Excluir Captura Instantânea: %(snapshot)s: volume: %(volume)s. "
+"Localizando StorageSychronization_SV_SV."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:631
 #, python-format
@@ -6147,6 +6414,8 @@ msgid ""
 "Snapshot: %(snapshot)s: volume: %(volume)s not found on the array. No "
 "snapshot to delete."
 msgstr ""
+"Captura Instantânea: %(snapshot)s: volume: %(volume)s não localizado na "
+"matriz. Nenhuma captura instantânea para excluir."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:646
 #, python-format
@@ -6155,6 +6424,9 @@ msgid ""
 "ModifyReplicaSynchronization:  Replication Service: %(service)s  "
 "Operation: 19  Synchronization: %(sync_name)s."
 msgstr ""
+"Excluir Captura Instantânea: Destino: %(snapshot)s  Origem: %(volume)s.  "
+"Método: ModifyReplicaSynchronization:  Serviço de Replicação: %(service)s"
+"  Operação: 19  Sincronização: %(sync_name)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:662
 #, python-format
@@ -6162,6 +6434,8 @@ msgid ""
 "Delete Snapshot: Volume: %(volumename)s  Snapshot: %(snapshotname)s  "
 "Return code: %(rc)lu"
 msgstr ""
+"Excluir Captura Instantânea: Volume: %(volumename)s  Captura Instantânea:"
+" %(snapshotname)s  Código de Retorno: %(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:671
 #, python-format
@@ -6169,6 +6443,9 @@ msgid ""
 "Error Delete Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s. Return code: %(rc)lu. Error: %(error)s"
 msgstr ""
+"Erro ao Excluir Captura Instantânea: Volume: %(volumename)s  Captura "
+"Instantânea:%(snapshotname)s.  Código de retorno: %(rc)lu. Erro: "
+"%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:696
 #: cinder/volume/drivers/emc/emc_smis_common.py:711
@@ -6196,6 +6473,8 @@ msgid ""
 "Leaving delete_snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu."
 msgstr ""
+"Saindo de delete_snapshot: Volume: %(volumename)s Captura Instantânea: "
+"%(snapshotname)s  Código de Retorno: %(rc)lu."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:745
 #, python-format
@@ -6203,21 +6482,23 @@ msgid ""
 "ExposePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(lun_name)s"
 "  InitiatorPortIDs: %(initiator)s  DeviceAccesses: 2"
 msgstr ""
+"ExposePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(lun_name)s"
+"  InitiatorPortIDs: %(initiator)s  DeviceAccesses: 2"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:760
 #, python-format
 msgid "ExposePaths parameter LunMaskingSCSIProtocolController: %(lunmasking)s"
-msgstr ""
+msgstr "Parâmetro de ExposePaths LunMaskingSCSIProtocolController: %(lunmasking)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:771
-#, fuzzy, python-format
+#, python-format
 msgid "Error mapping volume %s."
-msgstr "Desanexar volume %s"
+msgstr "Erro ao mapear o volume %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:775
-#, fuzzy, python-format
+#, python-format
 msgid "ExposePaths for volume %s completed successfully."
-msgstr "volume %s: remoção realizada com sucesso"
+msgstr "ExposePaths para o volume %s concluído com êxito."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:791
 #, python-format
@@ -6225,16 +6506,18 @@ msgid ""
 "HidePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(device_id)s  "
 "LunMaskingSCSIProtocolController: %(lunmasking)s"
 msgstr ""
+"HidePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(device_id)s  "
+"LunMaskingSCSIProtocolController: %(lunmasking)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:804
 #, python-format
 msgid "Error unmapping volume %s."
-msgstr ""
+msgstr "Erro na remoção de mapeamento do volume %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:808
-#, fuzzy, python-format
+#, python-format
 msgid "HidePaths for volume %s completed successfully."
-msgstr "volume %s: remoção realizada com sucesso"
+msgstr "HidePaths para o volume %s concluído com êxito."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:821
 #, python-format
@@ -6242,16 +6525,18 @@ msgid ""
 "AddMembers: ConfigServicie: %(service)s  MaskingGroup: %(masking_group)s"
 "  Members: %(vol)s"
 msgstr ""
+"AddMembers: ConfigServicie: %(service)s  MaskingGroup: %(masking_group)s"
+"  Membros: %(vol)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:836
 #, python-format
 msgid "Error mapping volume %(vol)s. %(error)s"
-msgstr ""
+msgstr "Erro ao mapear o volume %(vol)s. %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:841
-#, fuzzy, python-format
+#, python-format
 msgid "AddMembers for volume %s completed successfully."
-msgstr "volume %s: remoção realizada com sucesso"
+msgstr "AddMembers para o volume %s concluído com êxito."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:854
 #, python-format
@@ -6259,52 +6544,56 @@ msgid ""
 "RemoveMembers: ConfigServicie: %(service)s  MaskingGroup: "
 "%(masking_group)s  Members: %(vol)s"
 msgstr ""
+"RemoveMembers: ConfigServicie: %(service)s  MaskingGroup: "
+"%(masking_group)s  Membros: %(vol)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:867
 #, python-format
 msgid "Error unmapping volume %(vol)s. %(error)s"
-msgstr ""
+msgstr "Erro na remoção de mapeamento do volume %(vol)s. %(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:872
-#, fuzzy, python-format
+#, python-format
 msgid "RemoveMembers for volume %s completed successfully."
-msgstr "volume %s: remoção realizada com sucesso"
+msgstr "RemoveMembers para o volume %s concluído com êxito."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:878
 #, python-format
 msgid "Map volume: %(volume)s"
-msgstr ""
+msgstr "Mapear volume: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:887
 #: cinder/volume/drivers/emc/emc_smis_common.py:917
 #, python-format
 msgid "Cannot find Controller Configuration Service for storage system %s"
 msgstr ""
+"Não é possível localizar o Serviço de Configuração do Controlador para o "
+"sistema de armazenamento %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:901
 #, python-format
 msgid "Unmap volume: %(volume)s"
-msgstr ""
+msgstr "Remover mapeamento do volume: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:907
 #, python-format
 msgid "Volume %s is not mapped. No volume to unmap."
-msgstr ""
+msgstr "O volume %s não está mapeado. Nenhum volume para remover mapeamento."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:931
 #, python-format
 msgid "Initialize connection: %(volume)s"
-msgstr ""
+msgstr "Inicializar conexão: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:937
 #, python-format
 msgid "Volume %s is already mapped."
-msgstr ""
+msgstr "O volume %s já está mapeado."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:949
 #, python-format
 msgid "Terminate connection: %(volume)s"
-msgstr ""
+msgstr "Finalizar conexão: %(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:956
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:197
@@ -6360,16 +6649,16 @@ msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1063
 msgid "Storage type not found."
-msgstr ""
+msgstr "Tipo de armazenamento não localizado."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1079
 #, python-format
 msgid "Found Masking View: %s"
-msgstr ""
+msgstr "Visualização de Mascaramento localizada: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1082
 msgid "Masking View not found."
-msgstr ""
+msgstr "Visualização de Mascaramento não localizada."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1097
 #, python-format
@@ -6382,76 +6671,75 @@ msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1122
 msgid "Ecom user not found."
-msgstr ""
+msgstr "Usuário do Ecom não localizado."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1142
 #, python-format
 msgid "Ecom IP: %(ecomIp)s Port: %(ecomPort)s"
-msgstr ""
+msgstr "IP do Ecom: %(ecomIp)s Porta: %(ecomPort)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1146
 msgid "Ecom server not found."
-msgstr ""
+msgstr "Servidor Ecom não localizado."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1153
-#, fuzzy
 msgid "Cannot connect to ECOM server"
-msgstr "Reconectado à fila"
+msgstr "Não é possível conectar-se ao servidor ECOM"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1165
 #, python-format
 msgid "Found Replication Service: %s"
-msgstr ""
+msgstr "Serviço de Replicação localizado: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1178
 #, python-format
 msgid "Found Storage Configuration Service: %s"
-msgstr ""
+msgstr "Serviço de Configuração de Armazenamento localizado: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1191
 #, python-format
 msgid "Found Controller Configuration Service: %s"
-msgstr ""
+msgstr "Serviço de Configuração do Controlador localizado: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1204
 #, python-format
 msgid "Found Storage Hardware ID Management Service: %s"
-msgstr ""
+msgstr "Serviço de Gerenciamento de ID do Hardware de Armazenamento localizado: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1248
 #, python-format
 msgid "Pool %(storage_type)s is not found."
-msgstr ""
+msgstr "O conjunto %(storage_type)s não foi localizado."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1254
 #, python-format
 msgid "Storage system not found for pool %(storage_type)s."
-msgstr ""
+msgstr "Sistema de armazenamento não localizado para o conjunto %(storage_type)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1260
 #, python-format
 msgid "Pool: %(pool)s  SystemName: %(systemname)s."
-msgstr ""
+msgstr "Conjunto: %(pool)s  SystemName: %(systemname)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1277
 #, python-format
 msgid "Pool name: %(poolname)s  System name: %(systemname)s."
-msgstr ""
+msgstr "Nome do conjunto: %(poolname)s  Nome do sistema: %(systemname)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1292
 #, python-format
 msgid "Volume %(volumename)s not found on the array."
-msgstr ""
+msgstr "Volume %(volumename)s não localizado na matriz."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1295
 #, python-format
 msgid "Volume name: %(volumename)s  Volume instance: %(vol_instance)s."
-msgstr ""
+msgstr "Nome do volume: %(volumename)s  Instância do volume: %(vol_instance)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1310
 #, python-format
 msgid "Source: %(volumename)s  Target: %(snapshotname)s."
-msgstr ""
+msgstr "Origem: %(volumename)s  Destino: %(snapshotname)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1322
 #, python-format
@@ -6459,6 +6747,8 @@ msgid ""
 "Source: %(volumename)s  Target: %(snapshotname)s. Storage Synchronized "
 "not found. "
 msgstr ""
+"Origem: %(volumename)s  Destino: %(snapshotname)s. Armazenamento "
+"Sincronizado não localizado. "
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1327
 #, python-format
@@ -6466,16 +6756,18 @@ msgid ""
 "Storage system: %(storage_system)s  Storage Synchronized instance: "
 "%(sync)s."
 msgstr ""
+"Sistema de armazenamento: %(storage_system)s  Instância de Armazenamento "
+"Sincronizado: %(sync)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1353
 #, python-format
 msgid "Error finding %s."
-msgstr ""
+msgstr "Erro ao localizar %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1357
 #, python-format
 msgid "Found %(name)s: %(initiator)s."
-msgstr ""
+msgstr "Localizado %(name)s: %(initiator)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1417
 #, python-format
@@ -6483,6 +6775,8 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage system %(storage_system)s "
 "and initiator %(initiator)s is  %(ctrl)s."
 msgstr ""
+"O LunMaskingSCSIProtocolController para o sistema de armazenamento "
+"%(storage_system)s e inicializador %(initiator)s é %(ctrl)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1458
 #, python-format
@@ -6490,6 +6784,8 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage volume %(vol)s and initiator"
 " %(initiator)s is  %(ctrl)s."
 msgstr ""
+"O LunMaskingSCSIProtocolController para o volume de armazenamento %(vol)s"
+" e inicializador %(initiator)s é %(ctrl)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1472
 #, python-format
@@ -6497,6 +6793,8 @@ msgid ""
 "Volume %(name)s not found on the array. Cannot determine if there are "
 "volumes mapped."
 msgstr ""
+"Volume %(name)s não localizado na matriz. Não é possível determinar se há"
+" volumes mapeados."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1484
 #, python-format
@@ -6504,6 +6802,8 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage system %(storage)s and "
 "%(connector)s is %(ctrl)s."
 msgstr ""
+"O LunMaskingSCSIProtocolController para o sistema de armazenamento "
+"%(storage)s e %(connector)s é %(ctrl)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1496
 #, python-format
@@ -6511,11 +6811,13 @@ msgid ""
 "Found %(numVolumesMapped)d volumes on storage system %(storage)s mapped "
 "to %(initiator)s."
 msgstr ""
+"Localizados %(numVolumesMapped)d volumes no sistema de armazenamento "
+"%(storage)s mapeados para %(initiator)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1531
 #, python-format
 msgid "Available device number on %(storage)s: %(device)s."
-msgstr ""
+msgstr "Número do dispositivo disponível em %(storage)s: %(device)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1556
 #, python-format
@@ -6528,26 +6830,30 @@ msgstr ""
 #, python-format
 msgid "Device number not found for volume %(volumename)s %(vol_instance)s."
 msgstr ""
+"Número do dispositivo não localizado para o volume %(volumename)s "
+"%(vol_instance)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1597
 #, python-format
 msgid "Found device number %(device)d for volume %(volumename)s %(vol_instance)s."
 msgstr ""
+"Número do dispositivo %(device)d localizado para o volume %(volumename)s "
+"%(vol_instance)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1607
 #, python-format
 msgid "Device info: %(data)s."
-msgstr ""
+msgstr "Informações do dispositivo: %(data)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1629
 #, python-format
 msgid "Masking view: %(view)s DeviceMaskingGroup: %(masking)s."
-msgstr ""
+msgstr "Visualização de mascaramento: %(view)s DeviceMaskingGroup: %(masking)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1651
 #, python-format
 msgid "Found Storage Processor System: %s"
-msgstr ""
+msgstr "Sistema do Processador de Armazenamento localizado: %s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1679
 #, python-format
@@ -6555,10 +6861,12 @@ msgid ""
 "iSCSIProtocolEndpoint for storage system %(storage_system)s and SP %(sp)s"
 " is  %(endpoint)s."
 msgstr ""
+"O iSCSIProtocolEndpoint para o sistema de armazenamento "
+"%(storage_system)s e SP %(sp)s é %(endpoint)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1720
 msgid "Error finding Storage Hardware ID Service."
-msgstr ""
+msgstr "Erro ao localizar o Serviço de ID do Hardware de Armazenamento."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1726
 #, python-format
@@ -6566,41 +6874,45 @@ msgid ""
 "EMCGetTargetEndpoints: Service: %(service)s  Storage HardwareIDs: "
 "%(hardwareids)s."
 msgstr ""
+"EMCGetTargetEndpoints: Serviço: %(service)s  HardwareIDs de "
+"Armazenamento: %(hardwareids)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1738
 msgid "Error finding Target WWNs."
-msgstr ""
+msgstr "Erro ao localizar WWNs de Destino."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1748
 #, python-format
 msgid "Add target WWN: %s."
-msgstr ""
+msgstr "Incluir WWN de destino: %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1750
 #, python-format
 msgid "Target WWNs: %s."
-msgstr ""
+msgstr "WWNs de destino: %s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1766
 #, python-format
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
-msgstr ""
+msgstr "Os IDs de Hardware de Armazenamento para %(wwpns)s são %(foundInstances)s."
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
+"Terminal ISCSI não localizado para SP %(sp)s no sistema de armazenamento "
+"%(storage)s."
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
-msgstr ""
+msgstr "Propriedades de ISCSI: %s"
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:77
 msgid "Pool name is not specified."
@@ -6681,7 +6993,7 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:251
 #, python-format
 msgid "create_export: Volume: %(volume)s  Device ID: %(device_id)s"
-msgstr ""
+msgstr "create_export: Volume: %(volume)s  ID do Dispositivo: %(device_id)s"
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:292
 #, python-format
@@ -6881,93 +7193,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
-#, fuzzy, python-format
+#: cinder/volume/drivers/hds/hds.py:251
+#, python-format
 msgid "HDP not found: %s"
-msgstr "Endereço para Link Local não encontrado: %s"
+msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7055,7 +7367,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7123,6 +7435,8 @@ msgstr ""
 #, python-format
 msgid "create_snapshot:snapshot name:%(snapshot)s, volume name:%(volume)s."
 msgstr ""
+"create_snapshot: nome da captura instantânea: %(snapshot)s, nome do "
+"volume: %(volume)s."
 
 #: cinder/volume/drivers/huawei/rest_common.py:354
 #, python-format
@@ -7166,6 +7480,8 @@ msgstr ""
 #, python-format
 msgid "terminate_connection:volume name: %(volume)s, initiator name: %(ini)s."
 msgstr ""
+"terminate_connection: nome do volume: %(volume)s, nome do inicializador: "
+"%(ini)s."
 
 #: cinder/volume/drivers/huawei/rest_common.py:937
 #, python-format
@@ -7224,7 +7540,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7255,12 +7571,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7293,7 +7609,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7304,111 +7620,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7416,77 +7732,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7640,97 +7956,97 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
-msgstr ""
+msgstr "%s não está configurado"
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:143
 msgid "enter: do_setup"
-msgstr ""
+msgstr "inserir: do_setup"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:153
 #, python-format
@@ -7743,11 +8059,11 @@ msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:214
 msgid "leave: do_setup"
-msgstr ""
+msgstr "sair: do_setup"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:218
 msgid "enter: check_for_setup_error"
-msgstr ""
+msgstr "inserir: check_for_setup_error"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:222
 msgid "Unable to determine system name"
@@ -7762,6 +8078,8 @@ msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
+"A senha ou a chave privada SSH é necessária para autenticação: configure "
+"a opção san_password ou san_private_key"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:246
 #, python-format
@@ -7769,15 +8087,17 @@ msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
+"Valor ilegal %d especificado para storwize_svc_flashcopy_timeout: Os "
+"valores válidos são entre 0 e 600"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
 msgid "leave: check_for_setup_error"
-msgstr ""
+msgstr "sair: check_for_setup_error"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:264
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
-msgstr ""
+msgstr "ensure_export: Volume %s não localizado no armazenamento"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:283
 msgid "The connector does not contain the required information."
@@ -7786,7 +8106,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:307
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "inserir: initialize_connection: volume %(vol)s com conector %(conn)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:338
 msgid "CHAP secret exists for host but CHAP is disabled"
@@ -7795,17 +8115,17 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:343
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
-msgstr ""
+msgstr "initialize_connection: Falha ao obter atributos para o volume %s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:355
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
-msgstr ""
+msgstr "Não foi localizado um nome de coluna esperado em lsvdisk: %s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:357
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
-msgstr ""
+msgstr "initialize_connection: Atributo de volume ausente para o volume %s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:374
 #, python-format
@@ -7813,11 +8133,15 @@ msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
+"initialize_connection: Nenhum nó localizado no grupo de E/S %(gid)s para "
+"o volume %(vol)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
+"initialize_connection: Não foi localizado um nó preferencial para o "
+"volume %s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:406
 msgid ""
@@ -7825,14 +8149,23 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
+"initialize_connection: Falha ao coletar propriedades de retorno para o "
+"volume %(vol)s e conector %(conn)s.\n"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7840,101 +8173,110 @@ msgid ""
 " connector %(conn)s\n"
 " properties: %(prop)s"
 msgstr ""
+"sair: initialize_connection:\n"
+" volume: %(vol)s\n"
+" conector %(conn)s\n"
+" propriedades: %(prop)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "inserir: terminate_connection: volume %(vol)s com conector %(conn)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "sair: terminate_connection: volume %(vol)s com conector %(conn)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
-msgstr ""
+msgstr "create_volume_from_snapshot: Os tamanhos de origem e destino diferem."
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
-msgstr ""
+msgstr "create_cloned_volume: Os tamanhos de origem e destino diferem."
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7942,31 +8284,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
-msgstr ""
+msgstr "Não foi possível obter dados do conjunto do armazenamento"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8069,26 +8418,34 @@ msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
+"Valor ilegal especificado para storwize_svc_vol_rsize: configure para uma"
+" porcentagem (0-100) ou -1"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:388
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
+"Valor ilegal especificado para storwize_svc_vol_warning: configure para "
+"uma porcentagem (0-100)"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:395
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
+"Valor ilegal especificado para storwize_svc_vol_grainsize: configure para"
+" 32, 64, 128 ou 256"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
 msgid "System does not support compression"
-msgstr ""
+msgstr "O sistema não suporta compactação"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:407
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
+"Se a compactação for configurada como True, rsize também deverá ser "
+"configurado (não igual a -1)"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:413
 #, python-format
@@ -8096,6 +8453,8 @@ msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
+"Valor ilegal %(prot)s especificado para storwize_svc_connection_protocol:"
+" os valores válidos são %(enabled)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:422
 #, python-format
@@ -8114,7 +8473,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:504
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
-msgstr ""
+msgstr "sair: _create_vdisk: volume %s "
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:531
 #, python-format
@@ -8150,7 +8509,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:601
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
-msgstr ""
+msgstr "Vdisk %(name)s não envolvido no mapeamento %(src)s -> %(tgt)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:637
 #, python-format
@@ -8187,15 +8546,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8207,18 +8573,17 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:213
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:250
-#, fuzzy, python-format
+#, python-format
 msgid ""
 "CLI Exception output:\n"
 " command: %(cmd)s\n"
 " stdout: %(out)s\n"
 " stderr: %(err)s"
 msgstr ""
-"%(description)s\n"
-"Comando: %(cmd)s\n"
-"Código de saída: %(exit_code)s\n"
-"Saída padrão: %(stdout)r\n"
-"Erro: %(stderr)r"
+"Saída de Exceção da CLI:\n"
+" comando: %(cmd)s\n"
+" stdout: %(out)s\n"
+" stderr: %(err)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:53
 #, python-format
@@ -8250,12 +8615,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -8326,36 +8691,38 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:69
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
-msgstr ""
+msgstr "Nenhuma propriedade de metadados %(prop)s definida para a LUN %(name)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:105
 #, python-format
 msgid "Using NetApp filer: %s"
-msgstr ""
+msgstr "Usando arquivador NetApp: %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:150
 msgid "Success getting LUN list from server"
-msgstr ""
+msgstr "Sucesso ao obter a lista deg LUNs do servidor"
 
 #: cinder/volume/drivers/netapp/iscsi.py:166
 #, python-format
 msgid "Created LUN with name %s"
-msgstr ""
+msgstr "LUN criado com o nome %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:175
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
 msgstr ""
+"Nenhuma entrada na tabela de LUNs para o volume/captura instantânea "
+"%(name)s."
 
 #: cinder/volume/drivers/netapp/iscsi.py:191
 #, python-format
 msgid "Destroyed LUN %s"
-msgstr ""
+msgstr "LUN destruído %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:227
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
-msgstr ""
+msgstr "LUN %(name)s mapeado para o inicializador %(initiator_name)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
@@ -8365,24 +8732,24 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:238
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get LUN target details for the LUN %s"
-msgstr "Falha ao obter metadados para o ip: %s"
+msgstr "Falha ao obter detalhes do destino de LUN para o LUN %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:249
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get target portal for the LUN %s"
-msgstr "Falha ao obter metadados para o ip: %s"
+msgstr "Falha ao obter o portal de destino para o LUN %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:252
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get target IQN for the LUN %s"
-msgstr "Falha ao obter metadados para o ip: %s"
+msgstr "Falha ao obter o IQN de destino para o LUN %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:290
-#, fuzzy, python-format
+#, python-format
 msgid "Snapshot %s deletion successful"
-msgstr "volume %s: remoção realizada com sucesso"
+msgstr "Exclusão de captura instantânea %s bem-sucedida"
 
 #: cinder/volume/drivers/netapp/iscsi.py:310
 #: cinder/volume/drivers/netapp/iscsi.py:557
@@ -8395,21 +8762,23 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:325
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
-msgstr ""
+msgstr "LUN %(name)s não mapeado a partir do inicializador %(initiator_name)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:414
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
-msgstr ""
+msgstr "Erro ao mapear o lun. Código: %(code)s, Mensagem: %(message)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:433
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
 msgstr ""
+"Erro ao remover o mapeamento do lun. Código: %(code)s, Mensagem: "
+"%(message)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:503
 msgid "Object is not a NetApp LUN."
-msgstr ""
+msgstr "O objeto não é um LUN de NetApp."
 
 #: cinder/volume/drivers/netapp/iscsi.py:535
 #, python-format
@@ -8508,12 +8877,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:841
 #, python-format
 msgid "No iscsi service found for vserver %s"
-msgstr ""
+msgstr "Nenhum serviço iscsi localizado para o vserver %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1008
 #, python-format
 msgid "Cloned LUN with new name %s"
-msgstr ""
+msgstr "LUN clonado com novo nome %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1012
 #, python-format
@@ -8536,9 +8905,9 @@ msgid "Api version could not be determined."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:1190
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get vol with required size for volume: %s"
-msgstr "Falha ao obter metadados para o ip: %s"
+msgstr "Falha ao obter vol. com o tamanho necessário para o volume: %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1299
 #, python-format
@@ -8548,12 +8917,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:1443
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
-msgstr ""
+msgstr "Operação de clone com origem %(name)s e destino %(new_name)s concluída"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1446
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
-msgstr ""
+msgstr "A operação de clone com origem %(name)s e destino %(new_name)s falhou"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1509
 msgid "Volume refresh job already running. Returning..."
@@ -8692,7 +9061,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:460
 #, python-format
 msgid "Converted to raw, but format is now %s"
-msgstr ""
+msgstr "Convertido em bruto, mas o formato é agora %s"
 
 #: cinder/volume/drivers/netapp/nfs.py:470
 #, python-format
@@ -8770,7 +9139,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:866
 #, python-format
 msgid "No interface found on cluster for ip %s"
-msgstr ""
+msgstr "Nenhuma interface localizada no cluster para o IP %s"
 
 #: cinder/volume/drivers/netapp/nfs.py:907
 #, python-format
@@ -8915,12 +9284,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:1349
 #, python-format
 msgid "No storage path found for export path %s"
-msgstr ""
+msgstr "Nenhum caminho do armazenamento localizado para o caminho de exportação %s"
 
 #: cinder/volume/drivers/netapp/nfs.py:1359
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
-msgstr ""
+msgstr "Clonando com origem %(src_path)s, destino %(dest_path)s"
 
 #: cinder/volume/drivers/netapp/ssc_utils.py:241
 #, python-format
@@ -9289,7 +9658,7 @@ msgstr ""
 #: cinder/volume/drivers/nexenta/iscsi.py:105
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
-msgstr ""
+msgstr "O volume %s não existe em Nexenta SA"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:151
 #, python-format
@@ -9365,10 +9734,10 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
-msgstr ""
+msgstr "Ignorado erro de criação de destino \"%s\" ao assegurar exportação"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:486
 #, python-format
@@ -9396,6 +9765,8 @@ msgid ""
 "Got error trying to destroy target group %(target_group)s, assuming it is"
 " already gone: %(exc)s"
 msgstr ""
+"Erro obtido ao tentar destruir o grupo de destinos %(target_group)s, "
+"supondo que ele já tenha sido extinto: %(exc)s"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:559
 #, python-format
@@ -9403,29 +9774,31 @@ msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
 "gone: %(exc)s"
 msgstr ""
+"Erro obtido ao tentar excluir o destino %(target)s, supondo que ele já "
+"tenha sido extinto: %(exc)s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:83
 #, python-format
 msgid "Sending JSON data: %s"
-msgstr ""
+msgstr "Enviando dados JSON: %s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:88
 msgid "No headers in server response"
-msgstr ""
+msgstr "Nenhum cabeçalho na resposta do servidor"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:89
 msgid "Bad response from server"
-msgstr ""
+msgstr "Resposta inválida do servidor"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:90
 #, python-format
 msgid "Auto switching to HTTPS connection to %s"
-msgstr ""
+msgstr "Comutando automaticamente para conexão HTTPS para %s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:96
-#, fuzzy, python-format
+#, python-format
 msgid "Got response: %s"
-msgstr "resposta %s"
+msgstr "Obteve resposta: %s"
 
 #: cinder/volume/drivers/nexenta/nfs.py:85
 #, python-format
@@ -9488,290 +9861,302 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
-msgstr ""
+msgstr "Especifique san_password ou san_private_key"
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
-msgstr ""
+msgstr "san_ip deve ser configurado"
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
-msgstr ""
+msgstr "Não é possível analisar a saída de visualização de lista: %s"
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
-msgstr ""
+msgstr "LUID não localizado para %(zfs_poolname)s. Saída=%(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
-msgstr ""
+msgstr "CPG (%s) não existe na matriz"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
+"Deve especificar uma pessoa válida %(valid)s, o valor '%(persona)s' é "
+"inválido."
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
+"Deve especificar um tipo de fornecimento válido %(valid)s, o valor "
+"'%(prov)s' é inválido."
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:763
-#, fuzzy, python-format
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
+#, python-format
 msgid "Volume (%s) already exists on array"
-msgstr "group %s já existe"
+msgstr "O volume (%s) já existe na matriz"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
-msgstr ""
+msgstr "O comando CLIQ retornou %s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, python-format
 msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
 msgstr ""
+"Resposta malformada para o comando CLIQ %(verb)s %(cliq_args)s. "
+"Resultado=%(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, python-format
 msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
+msgstr "Erro ao executar o comando CLIQ %(verb)s %(cliq_args)s.  Resultado=%(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, python-format
 msgid ""
 "Unexpected number of virtual ips for cluster  %(cluster_name)s. "
 "Result=%(_xml)s"
 msgstr ""
+"Número inesperado de número de IPs virtuais para o cluster  "
+"%(cluster_name)s. Resultado=%(_xml)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
+msgstr "Informações de volume: %(volume_name)s => %(volume_attributes)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
-msgstr ""
+msgstr "local_path não suportado"
 
 #: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:75
 #, python-format
@@ -10163,7 +10548,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10323,7 +10708,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10443,62 +10828,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10724,7 +11109,7 @@ msgstr ""
 
 #: cinder/volume/drivers/vmware/volumeops.py:744
 msgid "Copying disk data before snapshot of the VM"
-msgstr ""
+msgstr "Copiando dados do disco antes da captura instantânea da VM"
 
 #: cinder/volume/drivers/vmware/volumeops.py:754
 #, python-format
@@ -10781,9 +11166,9 @@ msgid "Filtered hubs: %s"
 msgstr ""
 
 #: cinder/volume/drivers/windows/windows.py:102
-#, fuzzy, python-format
+#, python-format
 msgid "Creating folder %s "
-msgstr "Apagando usuário %s"
+msgstr "Criando pasta %s "
 
 #: cinder/volume/drivers/windows/windows_utils.py:47
 #, python-format
@@ -10810,7 +11195,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10818,35 +11203,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10854,42 +11244,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/ro/LC_MESSAGES/cinder.po b/cinder/locale/ro/LC_MESSAGES/cinder.po
index 285aff0b0..2638ae134 100644
--- a/cinder/locale/ro/LC_MESSAGES/cinder.po
+++ b/cinder/locale/ro/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Romanian translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-06-12 07:55+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Romanian "
-"(http://www.transifex.com/projects/p/openstack/language/ro/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/ro/)\n"
 "Plural-Forms: nplurals=3; "
 "plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1))\n"
 "MIME-Version: 1.0\n"
@@ -738,34 +738,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -784,17 +784,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -803,39 +803,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1328,26 +1328,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1453,7 +1465,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1699,7 +1711,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1708,40 +1720,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2023,7 +2035,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2088,7 +2100,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2099,237 +2111,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2863,7 +2934,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2885,45 +2956,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3048,11 +3123,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3066,7 +3141,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3080,49 +3155,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3173,11 +3248,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3406,22 +3481,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3432,7 +3507,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3759,12 +3834,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3835,7 +3910,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3869,7 +3944,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3901,7 +3976,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3910,12 +3985,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3923,7 +3998,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3941,7 +4016,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4201,66 +4276,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4294,20 +4369,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4322,18 +4397,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4356,7 +4431,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4376,7 +4451,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4385,13 +4460,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4399,10 +4474,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4441,285 +4523,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4774,14 +4850,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4907,7 +4983,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4987,219 +5063,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5308,174 +5384,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5642,8 +5718,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5676,12 +5752,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5752,19 +5828,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6570,18 +6646,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6865,93 +6941,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7039,7 +7115,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7208,7 +7284,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7239,12 +7315,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7277,7 +7353,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7288,111 +7364,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7400,77 +7476,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7624,90 +7700,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7809,14 +7885,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7825,100 +7908,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7926,31 +8014,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8171,15 +8266,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8229,12 +8331,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9344,7 +9446,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9467,288 +9569,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10142,7 +10248,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10302,7 +10408,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10422,62 +10528,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10789,7 +10895,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10797,35 +10903,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10833,42 +10944,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/ru/LC_MESSAGES/cinder.po b/cinder/locale/ru/LC_MESSAGES/cinder.po
index 254931acf..eedba7bba 100644
--- a/cinder/locale/ru/LC_MESSAGES/cinder.po
+++ b/cinder/locale/ru/LC_MESSAGES/cinder.po
@@ -1,16 +1,19 @@
-# Russian translation for cinder
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the cinder package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+# Russian translations for cinder.
+# Copyright (C) 2014 ORGANIZATION
+# This file is distributed under the same license as the cinder project.
 #
-msgid ""
-msgstr ""
-"Project-Id-Version:  cinder\n"
-"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-03-29 06:10+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"
+# Translators:
+# eshumakher, 2013
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011
+msgid ""
+msgstr ""
+"Project-Id-Version:  Cinder\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
+"Language-Team: Russian "
+"(http://www.transifex.com/projects/p/cinder/language/ru/)\n"
 "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
 "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n"
 "MIME-Version: 1.0\n"
@@ -21,12 +24,14 @@ msgstr ""
 #: cinder/context.py:63
 #, python-format
 msgid "Arguments dropped when creating context: %s"
-msgstr ""
+msgstr "При создании контекста пропущены аргументы: %s"
 
 #: cinder/context.py:107
 #, python-format
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
+"read_deleted может принимать значения 'no', 'yes' или 'only', значение %r"
+" недопустимо"
 
 #: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
@@ -70,9 +75,9 @@ msgid "Policy doesn't allow %(action)s to be performed."
 msgstr "Политика не допускает выполнения %(action)s."
 
 #: cinder/exception.py:137
-#, fuzzy, python-format
+#, python-format
 msgid "Not authorized for image %(image_id)s."
-msgstr "Ядро не найдено для образа %(image_id)s."
+msgstr "Нет доступа к образу %(image_id)s."
 
 #: cinder/exception.py:141
 msgid "Volume driver not ready."
@@ -93,18 +98,17 @@ msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
 msgstr ""
 
 #: cinder/exception.py:159
-#, fuzzy, python-format
+#, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
-msgstr "Том %(volume_id)s никуда не присоединён"
+msgstr "Том %(volume_id)s все еще присоединен, сначала отсоедините его."
 
 #: cinder/exception.py:163
 msgid "Failed to load data into json format"
 msgstr "Ошибка загрузки данных в формат json"
 
 #: cinder/exception.py:167
-#, fuzzy
 msgid "The results are invalid."
-msgstr "Недопустимый запрос."
+msgstr "Неверные результаты."
 
 #: cinder/exception.py:171
 #, python-format
@@ -134,7 +138,7 @@ msgstr ""
 #: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
-msgstr ""
+msgstr "%(err)s"
 
 #: cinder/exception.py:197
 #, python-format
@@ -197,9 +201,9 @@ msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:250
-#, fuzzy, python-format
+#, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
-msgstr "Копия %(instance_id)s не имеет метаданных с ключом %(metadata_key)s."
+msgstr "У снимка %(snapshot_id)s нет метаданных с ключом %(metadata_key)s."
 
 #: cinder/exception.py:255
 #, python-format
@@ -240,12 +244,12 @@ msgstr "удаление тома %(volume_name)s, который имеет с
 #: cinder/exception.py:282
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
-msgstr ""
+msgstr "удаляемый снимок %(snapshot_name)s имеет зависимые тома"
 
 #: cinder/exception.py:287
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
-msgstr ""
+msgstr "Не найден target id  для тома  %(volume_id)s."
 
 #: cinder/exception.py:291
 #, python-format
@@ -270,12 +274,12 @@ msgstr "Узел %(host)s не найден."
 #: cinder/exception.py:307
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
-msgstr ""
+msgstr "Фильтр узлов диспетчера %(filter_name)s не найден"
 
 #: cinder/exception.py:311
-#, fuzzy, python-format
+#, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
-msgstr "Узел сompute %(host)s не найден."
+msgstr ""
 
 #: cinder/exception.py:315
 #, python-format
@@ -309,24 +313,24 @@ msgid "Quota for project %(project_id)s could not be found."
 msgstr "Квота проекта %(project_id)s не найдена."
 
 #: cinder/exception.py:340
-#, fuzzy, python-format
+#, python-format
 msgid "Quota class %(class_name)s could not be found."
-msgstr "Класс %(class_name)s не найден: %(exception)s"
+msgstr ""
 
 #: cinder/exception.py:344
-#, fuzzy, python-format
+#, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
-msgstr "Квота проекта %(project_id)s не найдена."
+msgstr ""
 
 #: cinder/exception.py:348
-#, fuzzy, python-format
+#, python-format
 msgid "Quota reservation %(uuid)s could not be found."
-msgstr "Пользователь %(user_id)s не найден."
+msgstr ""
 
 #: cinder/exception.py:352
-#, fuzzy, python-format
+#, python-format
 msgid "Quota exceeded for resources: %(overs)s"
-msgstr "Превышена квота"
+msgstr ""
 
 #: cinder/exception.py:356
 #, python-format
@@ -334,9 +338,9 @@ msgid "File %(file_path)s could not be found."
 msgstr "Файл %(file_path)s не может быть найден."
 
 #: cinder/exception.py:365
-#, fuzzy, python-format
+#, python-format
 msgid "Volume Type %(id)s already exists."
-msgstr "Тип тома %(name)s уже существует."
+msgstr ""
 
 #: cinder/exception.py:369
 #, python-format
@@ -359,9 +363,9 @@ msgid "Could not find config at %(path)s"
 msgstr "Невозможно найти конфигурацию по адресу %(path)s"
 
 #: cinder/exception.py:385
-#, fuzzy, python-format
+#, python-format
 msgid "Could not find parameter %(param)s"
-msgstr "Невозможно найти конфигурацию по адресу %(path)s"
+msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
@@ -413,9 +417,9 @@ msgid "Unknown or unsupported command %(cmd)s"
 msgstr ""
 
 #: cinder/exception.py:436
-#, fuzzy, python-format
+#, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
-msgstr "Неправильное тело сообщения: %(reason)s"
+msgstr ""
 
 #: cinder/exception.py:440
 #, python-format
@@ -455,9 +459,9 @@ msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:469
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to copy image to volume: %(reason)s"
-msgstr "Невозможно найти том %s"
+msgstr ""
 
 #: cinder/exception.py:473
 msgid "Invalid Ceph args provided for backup rbd operation"
@@ -480,18 +484,18 @@ msgid "Backup RBD operation failed"
 msgstr ""
 
 #: cinder/exception.py:493
-#, fuzzy, python-format
+#, python-format
 msgid "Backup %(backup_id)s could not be found."
-msgstr "Группа LDAP %(group_id)s не найдена."
+msgstr ""
 
 #: cinder/exception.py:497
 msgid "Failed to identify volume backend."
 msgstr ""
 
 #: cinder/exception.py:501
-#, fuzzy, python-format
+#, python-format
 msgid "Invalid backup: %(reason)s"
-msgstr "Недопустимый внутренний интерфейс: %s"
+msgstr ""
 
 #: cinder/exception.py:505
 #, python-format
@@ -499,9 +503,9 @@ msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:509
-#, fuzzy, python-format
+#, python-format
 msgid "Transfer %(transfer_id)s could not be found."
-msgstr "Образ %(image_id)s не найден."
+msgstr ""
 
 #: cinder/exception.py:513
 #, python-format
@@ -611,14 +615,14 @@ msgid "Zadara Cinder Driver exception."
 msgstr ""
 
 #: cinder/exception.py:611
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to create server object for initiator %(name)s"
-msgstr "Невозможно создать VDI на SR %(sr_ref)s для копии %(instance_name)s"
+msgstr ""
 
 #: cinder/exception.py:615
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find server object for initiator %(name)s"
-msgstr "Невозможно найти узел для копии %s"
+msgstr ""
 
 #: cinder/exception.py:619
 msgid "Unable to find any active VPSA controller"
@@ -635,9 +639,9 @@ msgid "Invalid attachment info for volume %(name)s: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:631
-#, fuzzy, python-format
+#, python-format
 msgid "Bad HTTP response status %(status)s"
-msgstr "Недопустимое состояние сервера: %(status)s"
+msgstr ""
 
 #: cinder/exception.py:636
 msgid "Bad response from SolidFire API"
@@ -663,9 +667,8 @@ msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
 #: cinder/exception.py:659
-#, fuzzy
 msgid "Unknown NFS exception"
-msgstr "Обнаружено неизвестное исключение."
+msgstr ""
 
 #: cinder/exception.py:663
 msgid "No mounted NFS shares found"
@@ -677,9 +680,8 @@ msgid "There is no share which can host %(volume_size)sG"
 msgstr ""
 
 #: cinder/exception.py:672
-#, fuzzy
 msgid "Unknown Gluster exception"
-msgstr "Обнаружено неизвестное исключение."
+msgstr ""
 
 #: cinder/exception.py:676
 msgid "No mounted Gluster shares found"
@@ -738,40 +740,40 @@ msgstr ""
 
 #: cinder/policy.py:30
 msgid "JSON file representing policy"
-msgstr ""
+msgstr "Файл JSON, представляющий политику"
 
 #: cinder/policy.py:33
 msgid "Rule checked when requested rule is not found"
-msgstr ""
+msgstr "Правило отмечено, когда запрошенное правило не найдено"
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -784,23 +786,23 @@ msgstr ""
 
 #: cinder/quota_utils.py:56 cinder/transfer/api.py:168
 #: cinder/volume/flows/api/create_volume.py:520
-#, fuzzy, python-format
+#, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create volume (%(d_consumed)d "
 "volumes already consumed)"
-msgstr "Превышена квота для %(pid)s, попытка создания тома %(size)sG"
+msgstr ""
 
-#: cinder/service.py:100
-#, fuzzy, python-format
+#: cinder/service.py:99
+#, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
-msgstr "Запуск узла сети (версия %(vcs_string)s) %(topic)s"
+msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -809,40 +811,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr "Служба завершила работу из-за отсутствия записи базы данных"
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr "Объект сервиса в базе данных отсутствует, Повторное создание."
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
-#, fuzzy
 msgid "Full set of CONF:"
-msgstr "Полный набор ФЛАГОВ:"
+msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -858,14 +859,13 @@ msgid "May specify only one of %s"
 msgstr ""
 
 #: cinder/utils.py:213
-#, fuzzy
 msgid "Specify a password or private_key"
-msgstr "Задайте san_password или san_private_key"
+msgstr ""
 
 #: cinder/utils.py:229
-#, fuzzy, python-format
+#, python-format
 msgid "Error connecting via ssh: %s"
-msgstr "Подключение к libvirt: %s"
+msgstr ""
 
 #: cinder/utils.py:413
 #, python-format
@@ -878,9 +878,9 @@ msgid "backend %s"
 msgstr "внутренний интерфейс %s"
 
 #: cinder/utils.py:699
-#, fuzzy, python-format
+#, python-format
 msgid "Could not remove tmpdir: %s"
-msgstr "Ошибка удаления контейнера: %s"
+msgstr ""
 
 #: cinder/utils.py:760
 #, python-format
@@ -903,19 +903,19 @@ msgid "%(name)s has more than %(max_length)s characters."
 msgstr ""
 
 #: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find cert_file : %s"
-msgstr "Невозможно найти адрес %r"
+msgstr ""
 
 #: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find ca_file : %s"
-msgstr "Невозможно найти адрес %r"
+msgstr ""
 
 #: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find key_file : %s"
-msgstr "Невозможно найти адрес %r"
+msgstr ""
 
 #: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
@@ -1098,14 +1098,14 @@ msgid "delete called for member %s"
 msgstr ""
 
 #: cinder/api/contrib/backups.py:176
-#, fuzzy, python-format
+#, python-format
 msgid "Delete backup with id: %s"
-msgstr "Удалить снимок с идентификатором: %s"
+msgstr ""
 
 #: cinder/api/contrib/backups.py:218
-#, fuzzy, python-format
+#, python-format
 msgid "Creating new backup %s"
-msgstr "Создание SR %s"
+msgstr ""
 
 #: cinder/api/contrib/backups.py:228 cinder/api/contrib/backups.py:260
 #: cinder/api/contrib/volume_transfer.py:157
@@ -1158,18 +1158,17 @@ msgid "import record output: %s."
 msgstr ""
 
 #: cinder/api/contrib/extended_snapshot_attributes.py:60
-#, fuzzy
 msgid "Snapshot not found."
-msgstr "Узел не найден"
+msgstr ""
 
 #: cinder/api/contrib/hosts.py:86 cinder/api/openstack/wsgi.py:237
 msgid "cannot understand XML"
 msgstr ""
 
 #: cinder/api/contrib/hosts.py:136
-#, fuzzy, python-format
+#, python-format
 msgid "Host '%s' could not be found."
-msgstr "Узел %(host)s не найден."
+msgstr ""
 
 #: cinder/api/contrib/hosts.py:165
 #, python-format
@@ -1275,9 +1274,8 @@ msgid "progress must be an integer percentage"
 msgstr ""
 
 #: cinder/api/contrib/types_extra_specs.py:101
-#, fuzzy
 msgid "Request body empty"
-msgstr "Неправильный формат тела запроса"
+msgstr ""
 
 #: cinder/api/contrib/types_extra_specs.py:105
 #: cinder/api/v1/snapshot_metadata.py:75 cinder/api/v1/volume_metadata.py:75
@@ -1338,26 +1336,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1379,34 +1389,33 @@ msgid "Service not found."
 msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:131
-#, fuzzy
 msgid "Listing volume transfers"
-msgstr "Обновление состояния узла"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:147
-#, fuzzy, python-format
+#, python-format
 msgid "Creating new volume transfer %s"
-msgstr "Создать снимок тома %s"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:162
-#, fuzzy, python-format
+#, python-format
 msgid "Creating transfer of volume %s"
-msgstr "Выполнена попытка удаления несуществующей консоли %(console_id)s."
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:183
-#, fuzzy, python-format
+#, python-format
 msgid "Accepting volume transfer %s"
-msgstr "Обновление состояния узла"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:196
-#, fuzzy, python-format
+#, python-format
 msgid "Accepting transfer %s"
-msgstr "Обновление состояния узла"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:217
-#, fuzzy, python-format
+#, python-format
 msgid "Delete transfer with id: %s"
-msgstr "Удалить том с идентификатором: %s"
+msgstr ""
 
 #: cinder/api/contrib/volume_type_encryption.py:64
 msgid "key_size must be non-negative"
@@ -1464,7 +1473,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1540,9 +1549,9 @@ msgid "too many body keys"
 msgstr ""
 
 #: cinder/api/openstack/wsgi.py:671
-#, fuzzy, python-format
+#, python-format
 msgid "Exception handling resource: %s"
-msgstr "Расширенный ресурс: %s"
+msgstr ""
 
 #: cinder/api/openstack/wsgi.py:676
 #, python-format
@@ -1625,9 +1634,8 @@ msgstr ""
 #: cinder/api/v1/snapshot_metadata.py:156 cinder/api/v2/snapshot_metadata.py:37
 #: cinder/api/v2/snapshot_metadata.py:117
 #: cinder/api/v2/snapshot_metadata.py:156
-#, fuzzy
 msgid "snapshot does not exist"
-msgstr "Копия не существует"
+msgstr ""
 
 #: cinder/api/v1/snapshot_metadata.py:139
 #: cinder/api/v1/snapshot_metadata.py:149 cinder/api/v1/volume_metadata.py:139
@@ -1659,9 +1667,8 @@ msgstr ""
 #: cinder/api/v1/volume_metadata.py:37 cinder/api/v1/volume_metadata.py:117
 #: cinder/api/v1/volume_metadata.py:156 cinder/api/v2/volume_metadata.py:36
 #: cinder/api/v2/volume_metadata.py:116 cinder/api/v2/volume_metadata.py:155
-#, fuzzy
 msgid "volume does not exist"
-msgstr "Сервер не существует"
+msgstr ""
 
 #: cinder/api/v1/volumes.py:114
 #, python-format
@@ -1694,9 +1701,9 @@ msgid "Create volume of %s GB"
 msgstr "Создание раздела %s ГБ"
 
 #: cinder/api/v1/volumes.py:504
-#, fuzzy, python-format
+#, python-format
 msgid "Removing options '%(bad_options)s' from query"
-msgstr "Удаление параметров '%(unk_opt_str)s' из запроса"
+msgstr ""
 
 #: cinder/api/v2/snapshots.py:111 cinder/api/v2/snapshots.py:126
 #: cinder/api/v2/snapshots.py:267
@@ -1716,53 +1723,49 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
-#, fuzzy, python-format
+#: cinder/api/v2/volumes.py:433
+#, python-format
 msgid "Removing options '%s' from query"
-msgstr "Удаление параметров '%(unk_opt_str)s' из запроса"
+msgstr ""
 
 #: cinder/backup/api.py:66
-#, fuzzy
 msgid "Backup status must be available or error"
-msgstr "Состояние тома должно быть доступно"
+msgstr ""
 
-#: cinder/backup/api.py:115
-#, fuzzy
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
-msgstr "Состояние тома должно быть доступно"
+msgstr ""
 
-#: cinder/backup/api.py:150
-#, fuzzy
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
-msgstr "Состояние тома должно быть доступно"
+msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
-#, fuzzy
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
-msgstr "Состояние тома должно быть доступно"
+msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2044,7 +2047,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2109,7 +2112,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2120,243 +2123,302 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:463
+#, python-format
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:474
+#, python-format
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:486
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "cmd2='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:492
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Pipe1 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
-#, fuzzy, python-format
+#, python-format
 msgid "unsupported compression algorithm: %s"
-msgstr "неподдерживаемый раздел: %s"
+msgstr ""
 
 #: cinder/backup/drivers/swift.py:122
 #, python-format
@@ -2374,9 +2436,9 @@ msgid "_generate_swift_object_name_prefix: %s"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:168
-#, fuzzy, python-format
+#, python-format
 msgid "generated object list: %s"
-msgstr "Ожидался объект типа: %s"
+msgstr ""
 
 #: cinder/backup/drivers/swift.py:179
 #, python-format
@@ -2410,9 +2472,9 @@ msgid "_read_metadata finished (%s)"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:222
-#, fuzzy, python-format
+#, python-format
 msgid "volume size %d is invalid."
-msgstr "Недопустимый запрос."
+msgstr ""
 
 #: cinder/backup/drivers/swift.py:236
 #, python-format
@@ -2542,9 +2604,9 @@ msgid "deleted swift object: %(swift_object_name)s in container: %(container)s"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:497
-#, fuzzy, python-format
+#, python-format
 msgid "delete %s finished"
-msgstr "_удалить: %s"
+msgstr ""
 
 #: cinder/backup/drivers/tsm.py:78
 #, python-format
@@ -2731,14 +2793,14 @@ msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
 #: cinder/brick/exception.py:108
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
-msgstr "Выполнена попытка удаления несуществующей консоли %(console_id)s."
+msgstr "Не удалось создать iscsi target для тома %(volume_id)s."
 
 #: cinder/brick/exception.py:112
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
-msgstr "Выполнена попытка удаления несуществующей консоли %(console_id)s."
+msgstr ""
 
 #: cinder/brick/exception.py:116
 #, python-format
@@ -2884,10 +2946,10 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
+#, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
-msgstr "Выполнена попытка удаления несуществующей консоли %(console_id)s."
+msgstr ""
 
 #: cinder/brick/iscsi/iscsi.py:222
 #, python-format
@@ -2906,45 +2968,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
+#, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
-msgstr "Выполнена попытка удаления несуществующей консоли %(console_id)s."
+msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:552
+#, python-format
 msgid "Removing iscsi_target: %s"
-msgstr "Перезагрузка копии %s"
+msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2978,18 +3044,18 @@ msgid "StdErr  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:82
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to locate Volume Group %s"
-msgstr "Невозможно найти том %s"
+msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:157
 msgid "Error querying thin pool about data_percent"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:370
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find VG: %s"
-msgstr "Ошибка поиска vbd для vdi %s"
+msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:420
 msgid ""
@@ -3069,11 +3135,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3087,7 +3153,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3101,50 +3167,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr "Нераспознанное значение read_deleted '%s'"
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
-#, fuzzy
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
-msgstr "Состояние тома должно быть доступно"
+msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3195,11 +3260,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3345,9 +3410,9 @@ msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
 #: cinder/image/image_utils.py:260
-#, fuzzy, python-format
+#, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
-msgstr "Преобразование в необработанный, но текущий формат %s"
+msgstr ""
 
 #: cinder/keymgr/conf_key_mgr.py:78
 msgid ""
@@ -3370,9 +3435,9 @@ msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
 #: cinder/openstack/common/excutils.py:62
-#, fuzzy, python-format
+#, python-format
 msgid "Original exception being dropped: %s"
-msgstr "Исходное исключение было сброшено"
+msgstr ""
 
 #: cinder/openstack/common/excutils.py:91
 #, python-format
@@ -3428,25 +3493,25 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
-#, fuzzy, python-format
+#: cinder/openstack/common/log.py:327
+#, python-format
 msgid "Deprecated: %s"
-msgstr "_удалить: %s"
+msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
-#, fuzzy, python-format
+#: cinder/openstack/common/log.py:710
+#, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
-msgstr "Класс %(fullname)s устарел: %(msg)s"
+msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:82
 #, python-format
@@ -3454,7 +3519,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3568,9 +3633,9 @@ msgstr ""
 
 #: cinder/openstack/common/service.py:175
 #: cinder/openstack/common/service.py:269
-#, fuzzy, python-format
+#, python-format
 msgid "Caught %s, exiting"
-msgstr "снимок %s: удаление"
+msgstr ""
 
 #: cinder/openstack/common/service.py:187
 msgid "Exception during rpc cleanup."
@@ -3581,9 +3646,8 @@ msgid "Parent process has died unexpectedly, exiting"
 msgstr ""
 
 #: cinder/openstack/common/service.py:275
-#, fuzzy
 msgid "Unhandled exception"
-msgstr "Вложенное исключение: %s"
+msgstr ""
 
 #: cinder/openstack/common/service.py:308
 msgid "Forking too fast, sleeping"
@@ -3595,9 +3659,9 @@ msgid "Started child %d"
 msgstr ""
 
 #: cinder/openstack/common/service.py:337
-#, fuzzy, python-format
+#, python-format
 msgid "Starting %d workers"
-msgstr "установка сетевого узла"
+msgstr ""
 
 #: cinder/openstack/common/service.py:354
 #, python-format
@@ -3674,11 +3738,11 @@ msgstr ""
 
 #: cinder/openstack/common/db/exception.py:44
 msgid "Invalid Parameter: Unicode is not supported by the current database."
-msgstr ""
+msgstr "Недопустимый параметр: Unicode не поддерживается используемой базой данных"
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:487
 msgid "DB exception wrapped."
-msgstr ""
+msgstr "Исключение БД скрыто."
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:538
 #, python-format
@@ -3686,9 +3750,9 @@ msgid "Got mysql server has gone away: %s"
 msgstr ""
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:610
-#, fuzzy, python-format
+#, python-format
 msgid "SQL connection failed. %s attempts left."
-msgstr "Ошибка соединения с SQL (%(connstring)s). %(attempts)d попыток осталось."
+msgstr ""
 
 #: cinder/openstack/common/db/sqlalchemy/utils.py:33
 msgid "Sort key supplied was not valid."
@@ -3773,21 +3837,21 @@ msgid "Choosing %s"
 msgstr ""
 
 #: cinder/scheduler/host_manager.py:266
-#, fuzzy, python-format
+#, python-format
 msgid "Ignoring %(service_name)s service update from %(host)s"
-msgstr "Принято служебное обновление для %(service_name)s от %(host)s."
+msgstr ""
 
 #: cinder/scheduler/host_manager.py:271
 #, python-format
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr "Принято служебное обновление для %(service_name)s от %(host)s."
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3858,7 +3922,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3892,7 +3956,7 @@ msgstr "Имитация команды привела к исключению %
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr "Ответ на имитацию команды в stdout='%(stdout)s' stderr='%(stderr)s'"
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3924,29 +3988,29 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
 #: cinder/tests/test_storwize_svc.py:252
-#, fuzzy, python-format
+#, python-format
 msgid "unrecognized argument %s"
-msgstr "Нераспознанное значение read_deleted '%s'"
+msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
-#, fuzzy, python-format
+#: cinder/tests/test_storwize_svc.py:1445
+#, python-format
 msgid ""
 "CLI output:\n"
 " stdout: %(stdout)s\n"
 " stderr: %(stderr)s"
-msgstr "Ответ на имитацию команды в stdout='%(stdout)s' stderr='%(stderr)s'"
+msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3964,10 +4028,9 @@ msgstr "Заданные данные: %s"
 msgid "Result data: %s"
 msgstr "Итоговые данные: %s"
 
-#: cinder/tests/api/contrib/test_backups.py:737
-#, fuzzy
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
-msgstr "Недопустимый снимок"
+msgstr ""
 
 #: cinder/tests/brick/test_brick_remotefs.py:99
 msgid "Unexpected call to _execute."
@@ -3978,9 +4041,9 @@ msgid "mount failed."
 msgstr ""
 
 #: cinder/tests/integrated/test_login.py:29
-#, fuzzy, python-format
+#, python-format
 msgid "volume: %s"
-msgstr "Отсоединить том %s"
+msgstr ""
 
 #: cinder/tests/integrated/api/client.py:34
 #, python-format
@@ -4065,18 +4128,17 @@ msgid "Inside get_active_zone_set %s"
 msgstr ""
 
 #: cinder/transfer/api.py:68
-#, fuzzy
 msgid "Volume in unexpected state"
-msgstr "Непредвиденный код состояния"
+msgstr ""
 
 #: cinder/transfer/api.py:102 cinder/volume/api.py:350
 msgid "status must be available"
 msgstr ""
 
 #: cinder/transfer/api.py:119
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to create transfer record for %s"
-msgstr "Ошибка получения метаданных для ip: %s"
+msgstr ""
 
 #: cinder/transfer/api.py:136
 #, python-format
@@ -4084,16 +4146,16 @@ msgid "Attempt to transfer %s with invalid auth key."
 msgstr ""
 
 #: cinder/transfer/api.py:156 cinder/volume/flows/api/create_volume.py:508
-#, fuzzy, python-format
+#, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG volume "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr "Превышена квота для %(pid)s, попытка создания тома %(size)sG"
+msgstr ""
 
 #: cinder/transfer/api.py:182
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to update quota donating volumetransfer id %s"
-msgstr "Ошибка обновления агента: %(resp)r"
+msgstr ""
 
 #: cinder/transfer/api.py:199
 #, python-format
@@ -4154,9 +4216,8 @@ msgid "status must be in-use to detach"
 msgstr ""
 
 #: cinder/volume/api.py:371
-#, fuzzy
 msgid "Volume status must be available to reserve"
-msgstr "Состояние тома должно быть доступно"
+msgstr ""
 
 #: cinder/volume/api.py:447
 msgid "Snapshot cannot be created while volume is migrating"
@@ -4167,23 +4228,22 @@ msgid "must be available"
 msgstr ""
 
 #: cinder/volume/api.py:473
-#, fuzzy, python-format
+#, 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"
+msgstr ""
 
 #: cinder/volume/api.py:485
-#, fuzzy, python-format
+#, 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 копий"
+msgstr ""
 
 #: cinder/volume/api.py:536
-#, fuzzy
 msgid "Volume Snapshot status must be available or error"
-msgstr "Состояние тома должно быть доступно"
+msgstr ""
 
 #: cinder/volume/api.py:564 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
@@ -4198,14 +4258,12 @@ msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
 #: cinder/volume/api.py:703 cinder/volume/api.py:777
-#, fuzzy
 msgid "Volume status must be available/in-use."
-msgstr "Состояние тома должно быть доступно"
+msgstr ""
 
 #: cinder/volume/api.py:706
-#, fuzzy
 msgid "Volume status is in-use."
-msgstr "том %s: том занят"
+msgstr ""
 
 #: cinder/volume/api.py:735
 msgid "Volume status must be available to extend."
@@ -4233,66 +4291,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4326,20 +4384,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4354,18 +4412,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr "том %s: удаление экспортирования"
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4388,7 +4446,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4403,12 +4461,12 @@ msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
 #: cinder/volume/driver.py:701
-#, fuzzy, python-format
+#, python-format
 msgid "Could not find iSCSI export for volume %s"
-msgstr "Невозможно найти экспортирование iSCSI для тома %s"
+msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4417,13 +4475,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4431,10 +4489,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4459,9 +4524,9 @@ msgid "%s"
 msgstr ""
 
 #: cinder/volume/iscsi.py:184
-#, fuzzy, python-format
+#, python-format
 msgid "Symbolic link %s not found"
-msgstr "маркер [%s] не найден"
+msgstr ""
 
 #: cinder/volume/iscsi.py:251
 #, python-format
@@ -4473,288 +4538,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr "Повторное экспортирование %s томов"
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr "том %s: пропуск экспортирования"
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr "том %s: удаление"
 
-#: cinder/volume/manager.py:390
-#, fuzzy
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
-msgstr "Том до сих пор присоединён"
+msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
-#, fuzzy
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
-msgstr "Ошибка обновления агента: %(resp)r"
+msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr "том %s: удаление завершено"
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr "снимок %s: создание"
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr "снимок %s: создание завершено"
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr "снимок %s: удаление"
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr "снимок %s: удаление выполнено"
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
-#, fuzzy, python-format
+#: cinder/volume/manager.py:686
+#, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
-msgstr "Подключить том %(volume_id)s для копии %(instance_id)s на %(device)s"
+msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
-#, fuzzy
 msgid "Updating volume status"
-msgstr "Обновление состояния узла"
+msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr "Принято уведомление {%s}"
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4809,14 +4865,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4830,9 +4886,9 @@ msgstr ""
 
 #: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:284
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
-#, fuzzy, python-format
+#, python-format
 msgid "Creating clone of volume: %s"
-msgstr "Создать снимок тома %s"
+msgstr ""
 
 #: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
@@ -4942,11 +4998,11 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
-#, fuzzy, python-format
+#, python-format
 msgid "Error running SSH command: %s"
-msgstr "Ошибка в соглашении: %s"
+msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:282
 #, python-format
@@ -5022,219 +5078,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
-#, fuzzy, python-format
+#, python-format
 msgid "casted to %s"
-msgstr "_создать: %s"
+msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
-#, fuzzy, python-format
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
+#, python-format
 msgid "Exception during mounting %s"
-msgstr "Расширенный ресурс: %s"
+msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5299,9 +5355,9 @@ msgid " but size is now %d"
 msgstr ""
 
 #: cinder/volume/drivers/nfs.py:380
-#, fuzzy, python-format
+#, python-format
 msgid "%s is already mounted"
-msgstr "образ уже присоединён"
+msgstr ""
 
 #: cinder/volume/drivers/nfs.py:432
 #, python-format
@@ -5343,176 +5399,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:212
+#, python-format
 msgid "error opening rbd image %s"
-msgstr "Ошибка запуска xvp: %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
-#, fuzzy
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
-msgstr "Подключение к libvirt: %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:703
+#, python-format
 msgid "connection data: %s"
-msgstr "Заданные данные: %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
-#, fuzzy
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
-msgstr "Недопустимый снимок"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:731
+#, python-format
 msgid "not cloneable: %s"
-msgstr "ответ %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:754
+#, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
-msgstr "Невозможно найти том %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5606,9 +5660,9 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:200
 #: cinder/volume/drivers/solidfire.py:269
 #: cinder/volume/drivers/solidfire.py:364
-#, fuzzy, python-format
+#, python-format
 msgid "API response: %s"
-msgstr "ответ %s"
+msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:220
 #, python-format
@@ -5626,9 +5680,8 @@ msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:396
-#, fuzzy
 msgid "Failed to get model update from clone"
-msgstr "Ошибка получения метаданных для ip: %s"
+msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:408
 #, python-format
@@ -5680,8 +5733,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5707,21 +5760,19 @@ msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:663
-#, fuzzy
 msgid "Updating cluster status info"
-msgstr "Обновление состояния узла"
+msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:671
-#, fuzzy
 msgid "Failed to get updated stats"
-msgstr "Невозможно получить обновлённое состояние: %s"
+msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5741,9 +5792,9 @@ msgid "Pool %(name)s: %(total)sGB total, %(free)sGB free"
 msgstr ""
 
 #: cinder/volume/drivers/zadara.py:408 cinder/volume/drivers/zadara.py:531
-#, fuzzy, python-format
+#, python-format
 msgid "Volume %(name)s could not be found. It might be already deleted"
-msgstr "Том %(volume_id)s не найден."
+msgstr ""
 
 #: cinder/volume/drivers/zadara.py:438
 #, python-format
@@ -5792,19 +5843,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr "Невозможно найти экспортирование iSCSI для тома %s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
-#, fuzzy, python-format
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
+#, python-format
 msgid "Cannot find device number for volume %s"
-msgstr "Невозможно найти экспортирование iSCSI для тома %s"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -5831,9 +5882,9 @@ msgid "Entering create_volume."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:86
-#, fuzzy, python-format
+#, python-format
 msgid "Create Volume: %(volume)s  Size: %(size)lu"
-msgstr "том %(vol_name)s: создание lv объёмом %(vol_size)sG"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:94
 #, python-format
@@ -5883,9 +5934,8 @@ msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:176
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:348
-#, fuzzy
 msgid "Entering create_volume_from_snapshot."
-msgstr "Создать том из снимка %s"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:181
 #, python-format
@@ -6056,9 +6106,9 @@ msgid "Entering delete_volume."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:471
-#, fuzzy, python-format
+#, python-format
 msgid "Delete Volume: %(volume)s"
-msgstr "Удалить том с идентификатором: %s"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:478
 #, python-format
@@ -6103,9 +6153,9 @@ msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:534
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:278
-#, fuzzy, python-format
+#, python-format
 msgid "Create snapshot: %(snapshot)s: volume: %(volume)s"
-msgstr "Создать снимок тома %s"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:544
 #: cinder/volume/drivers/emc/emc_smis_common.py:972
@@ -6136,11 +6186,11 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:583
-#, fuzzy, python-format
+#, python-format
 msgid ""
 "Error Create Snapshot: %(snapshot)s Volume: %(volume)s Error: "
 "%(errordesc)s"
-msgstr "Создать снимок тома %s"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:605
 #, python-format
@@ -6156,9 +6206,9 @@ msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:617
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:306
-#, fuzzy, python-format
+#, python-format
 msgid "Delete Snapshot: %(snapshot)s: volume: %(volume)s"
-msgstr "Создать снимок тома %s"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:623
 #, python-format
@@ -6236,14 +6286,14 @@ msgid "ExposePaths parameter LunMaskingSCSIProtocolController: %(lunmasking)s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:771
-#, fuzzy, python-format
+#, python-format
 msgid "Error mapping volume %s."
-msgstr "Ошибка запуска xvp: %s"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:775
-#, fuzzy, python-format
+#, python-format
 msgid "ExposePaths for volume %s completed successfully."
-msgstr "том %s: удаление завершено"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:791
 #, python-format
@@ -6258,9 +6308,9 @@ msgid "Error unmapping volume %s."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:808
-#, fuzzy, python-format
+#, python-format
 msgid "HidePaths for volume %s completed successfully."
-msgstr "том %s: удаление завершено"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:821
 #, python-format
@@ -6275,9 +6325,9 @@ msgid "Error mapping volume %(vol)s. %(error)s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:841
-#, fuzzy, python-format
+#, python-format
 msgid "AddMembers for volume %s completed successfully."
-msgstr "том %s: удаление завершено"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:854
 #, python-format
@@ -6292,9 +6342,9 @@ msgid "Error unmapping volume %(vol)s. %(error)s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:872
-#, fuzzy, python-format
+#, python-format
 msgid "RemoveMembers for volume %s completed successfully."
-msgstr "том %s: удаление завершено"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:878
 #, python-format
@@ -6385,9 +6435,8 @@ msgid "Found Storage Type in config file: %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1063
-#, fuzzy
 msgid "Storage type not found."
-msgstr "образ не найден."
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1079
 #, python-format
@@ -6395,9 +6444,8 @@ msgid "Found Masking View: %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1082
-#, fuzzy
 msgid "Masking View not found."
-msgstr "образ не найден."
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1097
 #, python-format
@@ -6409,9 +6457,8 @@ msgid "Timeout not specified."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1122
-#, fuzzy
 msgid "Ecom user not found."
-msgstr "Сервер не найден."
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1142
 #, python-format
@@ -6419,14 +6466,12 @@ msgid "Ecom IP: %(ecomIp)s Port: %(ecomPort)s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1146
-#, fuzzy
 msgid "Ecom server not found."
-msgstr "Сервер не найден."
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1153
-#, fuzzy
 msgid "Cannot connect to ECOM server"
-msgstr "Переподлючено к очереди"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1165
 #, python-format
@@ -6449,9 +6494,9 @@ msgid "Found Storage Hardware ID Management Service: %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1248
-#, fuzzy, python-format
+#, python-format
 msgid "Pool %(storage_type)s is not found."
-msgstr "Полномочия %(role_id)s не могут быть найдены."
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1254
 #, python-format
@@ -6469,14 +6514,14 @@ msgid "Pool name: %(poolname)s  System name: %(systemname)s."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1292
-#, fuzzy, python-format
+#, python-format
 msgid "Volume %(volumename)s not found on the array."
-msgstr "Том %(volume_id)s не найден."
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1295
-#, fuzzy, python-format
+#, python-format
 msgid "Volume name: %(volumename)s  Volume instance: %(vol_instance)s."
-msgstr "Не найден том для копии %(instance_id)s."
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1310
 #, python-format
@@ -6498,9 +6543,9 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1353
-#, fuzzy, python-format
+#, python-format
 msgid "Error finding %s."
-msgstr "Ошибка поиска vdis в SR %s"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1357
 #, python-format
@@ -6616,18 +6661,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6709,9 +6754,9 @@ msgid "Failed to list %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:251
-#, fuzzy, python-format
+#, python-format
 msgid "create_export: Volume: %(volume)s  Device ID: %(device_id)s"
-msgstr "Присоединить том %(volume_id)s к копии %(server_id)s на %(device)s"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:292
 #, python-format
@@ -6911,93 +6956,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
-#, fuzzy, python-format
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
+#, python-format
 msgid "XML exception reading parameter: %s"
-msgstr "Расширенный ресурс: %s"
+msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
-#, fuzzy, python-format
+#: cinder/volume/drivers/hds/hds.py:251
+#, python-format
 msgid "HDP not found: %s"
-msgstr "Узел не найден"
+msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
-#, fuzzy, python-format
+#: cinder/volume/drivers/hds/hds.py:396
+#, python-format
 msgid "delete lun %(lun)s on %(name)s"
-msgstr "Удалить том с идентификатором: %s"
+msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7085,7 +7130,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7254,7 +7299,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7285,12 +7330,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7323,7 +7368,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7334,111 +7379,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7446,77 +7491,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7670,90 +7715,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7855,14 +7900,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7871,100 +7923,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7972,31 +8029,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8217,15 +8281,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8237,18 +8308,13 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:213
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:250
-#, fuzzy, python-format
+#, python-format
 msgid ""
 "CLI Exception output:\n"
 " command: %(cmd)s\n"
 " stdout: %(out)s\n"
 " stderr: %(err)s"
 msgstr ""
-"%(description)s\n"
-"Команда: %(cmd)s\n"
-"Код выхода: %(exit_code)s\n"
-"Stdout: %(stdout)r\n"
-"Stderr: %(stderr)r"
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:53
 #, python-format
@@ -8280,12 +8346,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -8359,18 +8425,18 @@ msgid "No metadata property %(prop)s defined for the LUN %(name)s"
 msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:105
-#, fuzzy, python-format
+#, python-format
 msgid "Using NetApp filer: %s"
-msgstr "Выполняемые копии: %s"
+msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:150
 msgid "Success getting LUN list from server"
 msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:166
-#, fuzzy, python-format
+#, python-format
 msgid "Created LUN with name %s"
-msgstr "Создана папка с адресом %s"
+msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:175
 #, python-format
@@ -8395,24 +8461,24 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:238
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get LUN target details for the LUN %s"
-msgstr "Ошибка получения метаданных для ip: %s"
+msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:249
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get target portal for the LUN %s"
-msgstr "Ошибка получения метаданных для ip: %s"
+msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:252
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get target IQN for the LUN %s"
-msgstr "Ошибка получения метаданных для ip: %s"
+msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:290
-#, fuzzy, python-format
+#, python-format
 msgid "Snapshot %s deletion successful"
-msgstr "снимок %s: удаление выполнено"
+msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:310
 #: cinder/volume/drivers/netapp/iscsi.py:557
@@ -8566,9 +8632,9 @@ msgid "Api version could not be determined."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:1190
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get vol with required size for volume: %s"
-msgstr "Ошибка получения метаданных для ip: %s"
+msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:1299
 #, python-format
@@ -9317,9 +9383,9 @@ msgid "Error deleting vol with label %s."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:105
-#, fuzzy, python-format
+#, python-format
 msgid "Volume %s does not exist in Nexenta SA"
-msgstr "том группы %s не существует"
+msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:151
 #, python-format
@@ -9395,7 +9461,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9435,9 +9501,9 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:83
-#, fuzzy, python-format
+#, python-format
 msgid "Sending JSON data: %s"
-msgstr "Заданные данные: %s"
+msgstr ""
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:88
 msgid "No headers in server response"
@@ -9453,9 +9519,9 @@ msgid "Auto switching to HTTPS connection to %s"
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:96
-#, fuzzy, python-format
+#, python-format
 msgid "Got response: %s"
-msgstr "ответ %s"
+msgstr ""
 
 #: cinder/volume/drivers/nexenta/nfs.py:85
 #, python-format
@@ -9518,263 +9584,267 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr "Задайте san_password или san_private_key"
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr "san_ip должен быть назначен"
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 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:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
-#, fuzzy, python-format
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
+#, python-format
 msgid "Volume (%s) already exists on array"
-msgstr "группа %s уже существует"
+msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr "Возврат команды CLIQ %s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, python-format
 msgid ""
 "Unexpected number of virtual ips for cluster  %(cluster_name)s. "
@@ -9783,27 +9853,27 @@ msgstr ""
 "Непредвиденное количество виртуальных ip для кластера  %(cluster_name)s. "
 "Результат=%(_xml)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, 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:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr "local_path не поддерживается"
 
@@ -10197,7 +10267,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10357,7 +10427,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10477,62 +10547,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10815,9 +10885,9 @@ msgid "Filtered hubs: %s"
 msgstr ""
 
 #: cinder/volume/drivers/windows/windows.py:102
-#, fuzzy, python-format
+#, python-format
 msgid "Creating folder %s "
-msgstr "Создание SR %s"
+msgstr ""
 
 #: cinder/volume/drivers/windows/windows_utils.py:47
 #, python-format
@@ -10844,7 +10914,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10852,35 +10922,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10888,42 +10963,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/ru_RU/LC_MESSAGES/cinder.po b/cinder/locale/ru_RU/LC_MESSAGES/cinder.po
index 0238b6259..458b16fac 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-03-29 06:10+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Russian (Russia) "
@@ -738,34 +738,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -784,17 +784,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -803,39 +803,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1328,26 +1328,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1453,7 +1465,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1699,7 +1711,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1708,40 +1720,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2023,7 +2035,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2088,7 +2100,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2099,237 +2111,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2863,7 +2934,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2885,45 +2956,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3048,11 +3123,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3066,7 +3141,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3080,49 +3155,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3173,11 +3248,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3406,22 +3481,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3432,7 +3507,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3759,12 +3834,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3835,7 +3910,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3869,7 +3944,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3901,7 +3976,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3910,12 +3985,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3923,7 +3998,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3941,7 +4016,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4201,66 +4276,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4294,20 +4369,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4322,18 +4397,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4356,7 +4431,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4376,7 +4451,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4385,13 +4460,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4399,10 +4474,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4441,285 +4523,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4774,14 +4850,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4907,7 +4983,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4987,219 +5063,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5308,174 +5384,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5642,8 +5718,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5676,12 +5752,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5752,19 +5828,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6570,18 +6646,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6865,93 +6941,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7039,7 +7115,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7208,7 +7284,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7239,12 +7315,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7277,7 +7353,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7288,111 +7364,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7400,77 +7476,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7624,90 +7700,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7809,14 +7885,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7825,100 +7908,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7926,31 +8014,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8171,15 +8266,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8229,12 +8331,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9344,7 +9446,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9467,288 +9569,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10142,7 +10248,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10302,7 +10408,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10422,62 +10528,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10789,7 +10895,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10797,35 +10903,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10833,42 +10944,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/sk/LC_MESSAGES/cinder.po b/cinder/locale/sk/LC_MESSAGES/cinder.po
index f092f4f6c..3536584ad 100644
--- a/cinder/locale/sk/LC_MESSAGES/cinder.po
+++ b/cinder/locale/sk/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Slovak translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-08-27 04:58+0000\n"
-"Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Slovak "
-"(http://www.transifex.com/projects/p/openstack/language/sk/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/sk/)\n"
 "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/sl_SI/LC_MESSAGES/cinder.po b/cinder/locale/sl_SI/LC_MESSAGES/cinder.po
index 700a69dfc..fcb1738e7 100644
--- a/cinder/locale/sl_SI/LC_MESSAGES/cinder.po
+++ b/cinder/locale/sl_SI/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Slovenian (Slovenia) translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-07-01 16:14+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Slovenian (Slovenia) "
-"(http://www.transifex.com/projects/p/openstack/language/sl_SI/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/sl_SI/)\n"
 "Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 "
 "|| n%100==4 ? 2 : 3)\n"
 "MIME-Version: 1.0\n"
@@ -738,34 +738,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -784,17 +784,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -803,39 +803,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1328,26 +1328,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1453,7 +1465,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1699,7 +1711,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1708,40 +1720,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2023,7 +2035,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2088,7 +2100,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2099,237 +2111,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2863,7 +2934,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2885,45 +2956,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3048,11 +3123,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3066,7 +3141,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3080,49 +3155,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3173,11 +3248,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3406,22 +3481,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3432,7 +3507,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3759,12 +3834,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3835,7 +3910,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3869,7 +3944,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3901,7 +3976,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3910,12 +3985,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3923,7 +3998,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3941,7 +4016,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4201,66 +4276,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4294,20 +4369,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4322,18 +4397,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4356,7 +4431,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4376,7 +4451,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4385,13 +4460,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4399,10 +4474,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4441,285 +4523,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4774,14 +4850,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4907,7 +4983,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4987,219 +5063,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5308,174 +5384,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5642,8 +5718,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5676,12 +5752,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5752,19 +5828,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6570,18 +6646,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6865,93 +6941,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7039,7 +7115,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7208,7 +7284,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7239,12 +7315,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7277,7 +7353,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7288,111 +7364,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7400,77 +7476,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7624,90 +7700,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7809,14 +7885,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7825,100 +7908,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7926,31 +8014,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8171,15 +8266,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8229,12 +8331,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9344,7 +9446,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9467,288 +9569,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10142,7 +10248,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10302,7 +10408,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10422,62 +10528,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10789,7 +10895,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10797,35 +10903,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10833,42 +10944,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/sq/LC_MESSAGES/cinder.po b/cinder/locale/sq/LC_MESSAGES/cinder.po
index ac8a138ee..7a12d3ee9 100644
--- a/cinder/locale/sq/LC_MESSAGES/cinder.po
+++ b/cinder/locale/sq/LC_MESSAGES/cinder.po
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2014-03-27 04:55+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Albanian "
-"(http://www.transifex.com/projects/p/openstack/language/sq/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/sq/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/sr/LC_MESSAGES/cinder.po b/cinder/locale/sr/LC_MESSAGES/cinder.po
index 4a34c55df..9b9be8e63 100644
--- a/cinder/locale/sr/LC_MESSAGES/cinder.po
+++ b/cinder/locale/sr/LC_MESSAGES/cinder.po
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2014-03-13 05:13+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Serbian "
-"(http://www.transifex.com/projects/p/openstack/language/sr/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/sr/)\n"
 "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
 "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n"
 "MIME-Version: 1.0\n"
@@ -738,34 +738,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -784,17 +784,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -803,39 +803,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1328,26 +1328,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1453,7 +1465,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1699,7 +1711,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1708,40 +1720,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2023,7 +2035,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2088,7 +2100,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2099,237 +2111,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:463
+#, python-format
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:474
+#, python-format
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:492
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Pipe1 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:506
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Pipe2 failed - %s "
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2863,7 +2934,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2885,45 +2956,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3048,11 +3123,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3066,7 +3141,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3080,49 +3155,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3173,11 +3248,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3406,22 +3481,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
-msgstr ""
+msgstr "syslog okruženje mora biti jedno od: %s"
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3432,7 +3507,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3556,7 +3631,7 @@ msgstr ""
 
 #: cinder/openstack/common/service.py:238
 msgid "Parent process has died unexpectedly, exiting"
-msgstr ""
+msgstr "Stariji proces je iznenadno prekinut, napuštanje procesa"
 
 #: cinder/openstack/common/service.py:275
 msgid "Unhandled exception"
@@ -3569,17 +3644,17 @@ msgstr ""
 #: cinder/openstack/common/service.py:327
 #, python-format
 msgid "Started child %d"
-msgstr ""
+msgstr "Pokrenut mlađi proces %d"
 
 #: cinder/openstack/common/service.py:337
 #, python-format
 msgid "Starting %d workers"
-msgstr ""
+msgstr "Pokretanje %d izvršioca"
 
 #: cinder/openstack/common/service.py:354
 #, python-format
 msgid "Child %(pid)d killed by signal %(sig)d"
-msgstr ""
+msgstr "Mlađi proces %(pid)d ubijen signalom %(sig)d"
 
 #: cinder/openstack/common/service.py:358
 #, python-format
@@ -3589,17 +3664,17 @@ msgstr ""
 #: cinder/openstack/common/service.py:362
 #, python-format
 msgid "pid %d not in child list"
-msgstr ""
+msgstr "pid %d nije na mladjoj listi"
 
 #: cinder/openstack/common/service.py:392
 #, python-format
 msgid "Caught %s, stopping children"
-msgstr ""
+msgstr "Uhvaćen %s, zaustavljanje mlađih"
 
 #: cinder/openstack/common/service.py:410
 #, python-format
 msgid "Waiting on %d children to exit"
-msgstr ""
+msgstr "Čekanje na %d mlađe radi izlaza"
 
 #: cinder/openstack/common/sslutils.py:98
 #, python-format
@@ -3759,12 +3834,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3835,7 +3910,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3869,7 +3944,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3901,7 +3976,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3910,12 +3985,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3923,7 +3998,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3941,7 +4016,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4201,66 +4276,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4294,20 +4369,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4322,18 +4397,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4356,7 +4431,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4376,7 +4451,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4385,13 +4460,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4399,10 +4474,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4441,285 +4523,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4774,14 +4850,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4907,7 +4983,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4987,219 +5063,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5308,174 +5384,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5642,8 +5718,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5676,12 +5752,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5752,19 +5828,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6570,18 +6646,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6865,93 +6941,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7039,7 +7115,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7208,7 +7284,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7239,12 +7315,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7277,7 +7353,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7288,111 +7364,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7400,77 +7476,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7624,90 +7700,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7809,14 +7885,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7825,100 +7908,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7926,31 +8014,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8171,15 +8266,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8229,12 +8331,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9344,7 +9446,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9467,288 +9569,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10142,7 +10248,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10302,7 +10408,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10422,62 +10528,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10789,7 +10895,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10797,35 +10903,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10833,42 +10944,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/sv/LC_MESSAGES/cinder.po b/cinder/locale/sv/LC_MESSAGES/cinder.po
index 8f3e7ea48..705e58003 100644
--- a/cinder/locale/sv/LC_MESSAGES/cinder.po
+++ b/cinder/locale/sv/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Swedish translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-11-26 20:45+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Swedish "
-"(http://www.transifex.com/projects/p/openstack/language/sv/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/sv/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/sw_KE/LC_MESSAGES/cinder.po b/cinder/locale/sw_KE/LC_MESSAGES/cinder.po
index 6acefc01a..bca7bdc0b 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-03-29 06:10+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Swahili (Kenya) "
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/ta/LC_MESSAGES/cinder.po b/cinder/locale/ta/LC_MESSAGES/cinder.po
index c0ed817fa..9e09ca7e5 100644
--- a/cinder/locale/ta/LC_MESSAGES/cinder.po
+++ b/cinder/locale/ta/LC_MESSAGES/cinder.po
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2014-03-27 04:55+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Tamil "
-"(http://www.transifex.com/projects/p/openstack/language/ta/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/ta/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/te_IN/LC_MESSAGES/cinder.po b/cinder/locale/te_IN/LC_MESSAGES/cinder.po
index 50f450400..e160bbc19 100644
--- a/cinder/locale/te_IN/LC_MESSAGES/cinder.po
+++ b/cinder/locale/te_IN/LC_MESSAGES/cinder.po
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2014-03-27 04:55+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Telugu (India) "
-"(http://www.transifex.com/projects/p/openstack/language/te_IN/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/te_IN/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/tl/LC_MESSAGES/cinder.po b/cinder/locale/tl/LC_MESSAGES/cinder.po
index ce2c25626..53186e04f 100644
--- a/cinder/locale/tl/LC_MESSAGES/cinder.po
+++ b/cinder/locale/tl/LC_MESSAGES/cinder.po
@@ -1,17 +1,19 @@
-# Tagalog translation for cinder
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the cinder package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+# Filipino (Philippines) translations for cinder.
+# Copyright (C) 2014 ORGANIZATION
+# This file is distributed under the same license as the cinder project.
 #
-msgid ""
-msgstr ""
-"Project-Id-Version:  cinder\n"
-"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-03-29 06:10+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"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+# Translators:
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011
+msgid ""
+msgstr ""
+"Project-Id-Version:  Cinder\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
+"Language-Team: Tagalog "
+"(http://www.transifex.com/projects/p/cinder/language/tl/)\n"
+"Plural-Forms: nplurals=2; plural=(n > 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -69,9 +71,9 @@ msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
 #: cinder/exception.py:137
-#, fuzzy, python-format
+#, python-format
 msgid "Not authorized for image %(image_id)s."
-msgstr "walang paraan para sa mensahe: %s"
+msgstr ""
 
 #: cinder/exception.py:141
 msgid "Volume driver not ready."
@@ -736,34 +738,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -782,17 +784,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -801,39 +803,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1326,26 +1328,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1451,7 +1465,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1697,7 +1711,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1706,40 +1720,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2021,7 +2035,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2086,7 +2100,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2097,237 +2111,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
+#, python-format
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Deleting base image='%s'"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:457
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:463
+#, python-format
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:474
+#, python-format
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:485
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Piping cmd1='%s' into..."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:486
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "cmd2='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2861,7 +2934,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2883,45 +2956,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3046,11 +3123,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3064,7 +3141,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3078,49 +3155,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3171,11 +3248,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3404,22 +3481,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
-#, fuzzy, python-format
+#: cinder/openstack/common/log.py:327
+#, python-format
 msgid "Deprecated: %s"
-msgstr "natanggap %s"
+msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3430,7 +3507,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3757,12 +3834,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3833,7 +3910,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3867,7 +3944,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3899,7 +3976,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3908,12 +3985,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3921,7 +3998,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3939,7 +4016,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4199,66 +4276,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4292,20 +4369,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4320,18 +4397,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4354,7 +4431,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4374,7 +4451,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4383,13 +4460,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4397,10 +4474,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4439,285 +4523,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4772,14 +4850,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4905,11 +4983,11 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
-#, fuzzy, python-format
+#, python-format
 msgid "Error running SSH command: %s"
-msgstr "Merong hindi-inaasahang pagkakamali habang tumatakbo ang command."
+msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:282
 #, python-format
@@ -4985,219 +5063,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5306,174 +5384,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5640,8 +5718,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5674,12 +5752,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5750,19 +5828,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6377,9 +6455,8 @@ msgid "Ecom server not found."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1153
-#, fuzzy
 msgid "Cannot connect to ECOM server"
-msgstr "Muling kumonekta sa queue"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1165
 #, python-format
@@ -6569,18 +6646,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6941,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7115,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7284,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7315,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7353,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7364,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7476,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7700,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7885,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7908,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8014,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8266,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8331,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9446,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9569,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10248,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10408,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10528,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10895,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10903,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10944,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/tl_PH/LC_MESSAGES/cinder.po b/cinder/locale/tl_PH/LC_MESSAGES/cinder.po
index 42631f94a..1ac101866 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-03-29 06:10+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
 "PO-Revision-Date: 2013-09-26 22:10+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Tagalog (Philippines) "
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/tr/LC_MESSAGES/cinder.po b/cinder/locale/tr/LC_MESSAGES/cinder.po
index a6f246b4c..e99d3651c 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-03-29 06:10+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+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"
@@ -736,34 +736,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -782,17 +782,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -801,39 +801,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1326,26 +1326,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1451,7 +1463,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1697,7 +1709,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1706,40 +1718,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2021,7 +2033,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2086,7 +2098,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2097,237 +2109,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2861,7 +2932,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2883,45 +2954,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3046,11 +3121,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3064,7 +3139,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3078,49 +3153,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3171,11 +3246,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3404,22 +3479,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3430,7 +3505,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3757,12 +3832,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3833,7 +3908,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3867,7 +3942,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3899,7 +3974,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3908,12 +3983,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3921,7 +3996,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3939,7 +4014,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4199,66 +4274,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4292,20 +4367,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4320,18 +4395,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4354,7 +4429,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4374,7 +4449,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4383,13 +4458,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4397,10 +4472,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4439,285 +4521,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4772,14 +4848,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4905,7 +4981,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4985,219 +5061,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5306,174 +5382,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5640,8 +5716,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5674,12 +5750,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5750,19 +5826,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6568,18 +6644,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6863,93 +6939,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7037,7 +7113,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7206,7 +7282,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7237,12 +7313,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7275,7 +7351,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7286,111 +7362,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7398,77 +7474,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7622,90 +7698,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7807,14 +7883,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7823,100 +7906,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7924,31 +8012,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8169,15 +8264,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8227,12 +8329,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9342,7 +9444,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9465,288 +9567,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10140,7 +10246,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10300,7 +10406,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10420,62 +10526,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10787,7 +10893,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10795,35 +10901,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10831,42 +10942,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/tr_TR/LC_MESSAGES/cinder.po b/cinder/locale/tr_TR/LC_MESSAGES/cinder.po
index 7e7d9835d..e8a097467 100644
--- a/cinder/locale/tr_TR/LC_MESSAGES/cinder.po
+++ b/cinder/locale/tr_TR/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Turkish (Turkey) translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-05-29 08:13+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Turkish (Turkey) "
-"(http://www.transifex.com/projects/p/openstack/language/tr_TR/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/tr_TR/)\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -30,7 +30,7 @@ msgstr ""
 
 #: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
-msgstr ""
+msgstr "Bilinmeyen bir istisna oluştu."
 
 #: cinder/exception.py:88
 msgid "Exception in string format operation"
@@ -58,16 +58,16 @@ msgstr ""
 
 #: cinder/exception.py:124
 msgid "Not authorized."
-msgstr ""
+msgstr "Yetkiniz yok."
 
 #: cinder/exception.py:129
 msgid "User does not have admin privileges"
-msgstr ""
+msgstr "Kullanıcı yönetici ayrıcalıklarına sahip değil"
 
 #: cinder/exception.py:133
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
-msgstr ""
+msgstr "%(action)s uygulanmasına izin verilmiyor."
 
 #: cinder/exception.py:137
 #, python-format
@@ -80,7 +80,7 @@ msgstr ""
 
 #: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
-msgstr ""
+msgstr "Kabul edilemez parametreler var."
 
 #: cinder/exception.py:150
 #, python-format
@@ -123,7 +123,7 @@ msgstr ""
 #: cinder/exception.py:183
 #, python-format
 msgid "Invalid content type %(content_type)s."
-msgstr ""
+msgstr "Geçersiz içerik türü %(content_type)s."
 
 #: cinder/exception.py:187
 #, python-format
@@ -133,7 +133,7 @@ msgstr ""
 #: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
-msgstr ""
+msgstr "Hatalar: %(err)s"
 
 #: cinder/exception.py:197
 #, python-format
@@ -147,12 +147,12 @@ msgstr ""
 
 #: cinder/exception.py:206
 msgid "Service is unavailable at this time."
-msgstr ""
+msgstr "Şu anda servis kullanılamıyor."
 
 #: cinder/exception.py:210
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
-msgstr ""
+msgstr "%(image_id)s imajı kabul edilemez: %(reason)s"
 
 #: cinder/exception.py:214
 #, python-format
@@ -166,12 +166,12 @@ msgstr ""
 
 #: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
-msgstr ""
+msgstr "Kaynak bulunamadı."
 
 #: cinder/exception.py:228
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
-msgstr ""
+msgstr "%(volume_id)s bölümü bulunamadı."
 
 #: cinder/exception.py:232
 #, python-format
@@ -227,7 +227,7 @@ msgstr ""
 #: cinder/exception.py:274
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
-msgstr ""
+msgstr "%(snapshot_id)s sistem anlık görüntüsü bulunamadı."
 
 #: cinder/exception.py:278
 #, python-format
@@ -242,32 +242,32 @@ msgstr ""
 #: cinder/exception.py:287
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
-msgstr ""
+msgstr "%(volume_id)s bölümü için hedef id bulunamadı."
 
 #: cinder/exception.py:291
 #, python-format
 msgid "Invalid image href %(image_href)s."
-msgstr ""
+msgstr "Geçersiz %(image_href)s imaj kaynak dosyası."
 
 #: cinder/exception.py:295
 #, python-format
 msgid "Image %(image_id)s could not be found."
-msgstr ""
+msgstr "%(image_id)s imaj kaynak dosyası bulunamadı."
 
 #: cinder/exception.py:299
 #, python-format
 msgid "Service %(service_id)s could not be found."
-msgstr ""
+msgstr "%(service_id)s servisi bulunamadı."
 
 #: cinder/exception.py:303
 #, python-format
 msgid "Host %(host)s could not be found."
-msgstr ""
+msgstr "%(host)s sunucusu bulunamadı."
 
 #: cinder/exception.py:307
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
-msgstr ""
+msgstr "%(filter_name)s zamanlayıcı sunucu filtresi bulunamadı."
 
 #: cinder/exception.py:311
 #, python-format
@@ -277,7 +277,7 @@ msgstr ""
 #: cinder/exception.py:315
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
-msgstr ""
+msgstr "%(host)s sunucusunda %(binary)s ikilisi bulunamadı."
 
 #: cinder/exception.py:319
 #, python-format
@@ -293,7 +293,7 @@ msgstr ""
 
 #: cinder/exception.py:328
 msgid "Quota could not be found"
-msgstr ""
+msgstr "Kota bulunamadı."
 
 #: cinder/exception.py:332
 #, python-format
@@ -303,7 +303,7 @@ msgstr ""
 #: cinder/exception.py:336
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
-msgstr ""
+msgstr "%(project_id)s projesi için bir kota bulunamadı."
 
 #: cinder/exception.py:340
 #, python-format
@@ -328,7 +328,7 @@ msgstr ""
 #: cinder/exception.py:356
 #, python-format
 msgid "File %(file_path)s could not be found."
-msgstr ""
+msgstr "%(file_path)s dosyası bulunamadı."
 
 #: cinder/exception.py:365
 #, python-format
@@ -348,12 +348,12 @@ msgstr ""
 #: cinder/exception.py:377
 #, python-format
 msgid "Malformed message body: %(reason)s"
-msgstr ""
+msgstr "Hatalı biçimlendirilmiş mesaj gövdesi: %(reason)s"
 
 #: cinder/exception.py:381
 #, python-format
 msgid "Could not find config at %(path)s"
-msgstr ""
+msgstr "%(path)s'deki yapılandırma bulunamadı"
 
 #: cinder/exception.py:385
 #, python-format
@@ -368,7 +368,7 @@ msgstr ""
 #: cinder/exception.py:393
 #, python-format
 msgid "No valid host was found. %(reason)s"
-msgstr ""
+msgstr "Geçerli bir sunucu bulunamadı: %(reason)s"
 
 #: cinder/exception.py:402
 #, python-format
@@ -727,44 +727,44 @@ msgstr ""
 
 #: cinder/manager.py:128
 msgid "Notifying Schedulers of capabilities ..."
-msgstr ""
+msgstr "Yetenekler zamanlayıcısı bildiriliyor ..."
 
 #: cinder/policy.py:30
 msgid "JSON file representing policy"
-msgstr ""
+msgstr "JSON dosyası ilkeyi temsil eder"
 
 #: cinder/policy.py:33
 msgid "Rule checked when requested rule is not found"
-msgstr ""
+msgstr "İstekte bulunan kural bulunamadığında kural kontrol edildi."
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
-msgstr ""
+msgstr "Servis, hiç veritabanı girdisi olmayanı sonlandırdı."
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
-msgstr ""
+msgstr "Kurtarılmış model sunucu bağlantısı!"
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
-msgstr ""
+msgstr "Model sunucusu gitti."
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -861,7 +861,7 @@ msgstr ""
 #: cinder/utils.py:413
 #, python-format
 msgid "Invalid backend: %s"
-msgstr ""
+msgstr "Geçersiz backend: %s"
 
 #: cinder/utils.py:424
 #, python-format
@@ -896,17 +896,17 @@ msgstr ""
 #: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
-msgstr ""
+msgstr "cert_file bulunamadı: %s"
 
 #: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
-msgstr ""
+msgstr "ca_file bulunamadı: %s"
 
 #: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
-msgstr ""
+msgstr "key_file bulunamadı: %s"
 
 #: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
@@ -926,15 +926,15 @@ msgstr ""
 
 #: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
-msgstr ""
+msgstr "WSGI sunucusu durduruluyor."
 
 #: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
-msgstr ""
+msgstr "WSGI sunucusu durduruldu."
 
 #: cinder/wsgi.py:322
 msgid "You must implement __call__"
-msgstr ""
+msgstr "__call__ fonksiyonunu uygulamalısınız."
 
 #: cinder/api/auth.py:26
 msgid ""
@@ -950,78 +950,78 @@ msgstr ""
 
 #: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:282
 msgid "limit param must be an integer"
-msgstr ""
+msgstr "Sınır parametresi tam sayı olmak zorunda"
 
 #: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:279
 msgid "limit param must be positive"
-msgstr ""
+msgstr "Sınır parametresi pozitif olmak zorunda"
 
 #: cinder/api/common.py:120
 msgid "offset param must be an integer"
-msgstr ""
+msgstr "Göreli konum parametresi tam sayı olmak zorunda"
 
 #: cinder/api/common.py:134
 msgid "offset param must be positive"
-msgstr ""
+msgstr "Göreli konum parametresi pozitif olmak zorunda"
 
 #: cinder/api/common.py:162
 #, python-format
 msgid "marker [%s] not found"
-msgstr ""
+msgstr " [%s] göstergesi bulunamadı"
 
 #: cinder/api/common.py:189
 #, python-format
 msgid "href %s does not contain version"
-msgstr ""
+msgstr "%s referansı versiyon içermiyor"
 
 #: cinder/api/extensions.py:183
 msgid "Initializing extension manager."
-msgstr ""
+msgstr "Genişletme yöneticisi başlatılıyor"
 
 #: cinder/api/extensions.py:198
 #, python-format
 msgid "Loaded extension: %s"
-msgstr ""
+msgstr "Yüklenen bölüm: %s"
 
 #: cinder/api/extensions.py:236
 #, python-format
 msgid "Ext name: %s"
-msgstr ""
+msgstr "Ext adı: %s"
 
 #: cinder/api/extensions.py:237
 #, python-format
 msgid "Ext alias: %s"
-msgstr ""
+msgstr "Ext takma adı: %s"
 
 #: cinder/api/extensions.py:238
 #, python-format
 msgid "Ext description: %s"
-msgstr ""
+msgstr "Ext açıklaması: %s"
 
 #: cinder/api/extensions.py:240
 #, python-format
 msgid "Ext namespace: %s"
-msgstr ""
+msgstr "Ext isim uzayı: %s"
 
 #: cinder/api/extensions.py:241
 #, python-format
 msgid "Ext updated: %s"
-msgstr ""
+msgstr "Ext güncellendi: %s"
 
 #: cinder/api/extensions.py:243
 #, python-format
 msgid "Exception loading extension: %s"
-msgstr ""
+msgstr "İstisna yükleme uzantısı: %s"
 
 #: cinder/api/extensions.py:257
 #, python-format
 msgid "Loading extension %s"
-msgstr ""
+msgstr "Genişletme yükleniyor: %s"
 
 #: cinder/api/extensions.py:263
 #, python-format
 msgid "Calling extension factory %s"
-msgstr ""
+msgstr "Genişletme fabrikası çağırılıyor %s"
 
 #: cinder/api/extensions.py:277
 #, python-format
@@ -1038,12 +1038,12 @@ msgstr ""
 #: cinder/api/extensions.py:288
 #, python-format
 msgid "Failed to load extension %(ext_factory)s: %(exc)s"
-msgstr ""
+msgstr "%(ext_factory)s uzantısı yüklemede hata: %(exc)s"
 
 #: cinder/api/extensions.py:357
 #, python-format
 msgid "Failed to load extension %(classpath)s: %(exc)s"
-msgstr ""
+msgstr "%(classpath)s uzantısı yüklemede hata: %(exc)s"
 
 #: cinder/api/extensions.py:382
 #, python-format
@@ -1058,20 +1058,22 @@ msgstr ""
 
 #: cinder/api/xmlutil.py:266
 msgid "element is not a child"
-msgstr ""
+msgstr "eleman çocuk değil"
 
 #: cinder/api/xmlutil.py:463
 msgid "root element selecting a list"
-msgstr ""
+msgstr "listeden kök elemanı seçiliyor"
 
 #: cinder/api/xmlutil.py:786
 #, python-format
 msgid "Template tree mismatch; adding slave %(slavetag)s to master %(mastertag)s"
 msgstr ""
+"Şablon ağacı uyumsuz; %(mastertag)s ana kaydına %(slavetag)s bağımlı "
+"birimi ekleniyor"
 
 #: cinder/api/xmlutil.py:907
 msgid "subclasses must implement construct()!"
-msgstr ""
+msgstr "alt sınıflar yapıcı() oluşturmak zorunda!"
 
 #: cinder/api/contrib/admin_actions.py:82
 #, python-format
@@ -1102,7 +1104,7 @@ msgstr ""
 #: cinder/api/contrib/volume_transfer.py:157
 #: cinder/api/contrib/volume_transfer.py:193
 msgid "Incorrect request body format"
-msgstr ""
+msgstr "Geçersiz gövde biçimi isteği."
 
 #: cinder/api/contrib/backups.py:234
 #, python-format
@@ -1164,12 +1166,12 @@ msgstr ""
 #: cinder/api/contrib/hosts.py:165
 #, python-format
 msgid "Invalid status: '%s'"
-msgstr ""
+msgstr "Geçersiz durum: %s"
 
 #: cinder/api/contrib/hosts.py:168
 #, python-format
 msgid "Invalid update setting: '%s'"
-msgstr ""
+msgstr "Geçersiz güncelleme ayarı: '%s'"
 
 #: cinder/api/contrib/hosts.py:180
 #, python-format
@@ -1232,7 +1234,7 @@ msgstr ""
 
 #: cinder/api/contrib/scheduler_hints.py:36
 msgid "Malformed scheduler_hints attribute"
-msgstr ""
+msgstr "Bozuk scheduler_hints özelliği"
 
 #: cinder/api/contrib/services.py:91
 msgid ""
@@ -1272,13 +1274,13 @@ msgstr ""
 #: cinder/api/v1/snapshot_metadata.py:75 cinder/api/v1/volume_metadata.py:75
 #: cinder/api/v2/snapshot_metadata.py:75 cinder/api/v2/volume_metadata.py:74
 msgid "Request body and URI mismatch"
-msgstr ""
+msgstr "URI ve gövde isteği uyumsuz"
 
 #: cinder/api/contrib/types_extra_specs.py:108
 #: cinder/api/v1/snapshot_metadata.py:79 cinder/api/v1/volume_metadata.py:79
 #: cinder/api/v2/snapshot_metadata.py:79 cinder/api/v2/volume_metadata.py:78
 msgid "Request body contains too many items"
-msgstr ""
+msgstr "İstek gövdesi çok sayıda öğe içeriyor"
 
 #: cinder/api/contrib/types_extra_specs.py:152
 msgid ""
@@ -1327,26 +1329,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1466,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1467,12 +1481,12 @@ msgstr ""
 #: cinder/api/middleware/fault.py:44
 #, python-format
 msgid "Caught error: %s"
-msgstr ""
+msgstr "Yakalama hatası: %s"
 
 #: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:978
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
-msgstr ""
+msgstr "%(url)s HTTP %(status)d ile geri döndü"
 
 #: cinder/api/middleware/fault.py:69
 #, python-format
@@ -1482,16 +1496,16 @@ msgstr ""
 #: cinder/api/middleware/sizelimit.py:55 cinder/api/middleware/sizelimit.py:64
 #: cinder/api/middleware/sizelimit.py:78
 msgid "Request is too large."
-msgstr ""
+msgstr "İstek çok geniş"
 
 #: cinder/api/openstack/__init__.py:69
 msgid "Must specify an ExtensionManager class"
-msgstr ""
+msgstr "UzantıYöneticisi sınıfı belirlenmek zorunda"
 
 #: cinder/api/openstack/__init__.py:80
 #, python-format
 msgid "Extended resource: %s"
-msgstr ""
+msgstr "Genişletilmiş kaynak: %s"
 
 #: cinder/api/openstack/__init__.py:104
 #, python-format
@@ -1499,11 +1513,13 @@ msgid ""
 "Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
 "resource"
 msgstr ""
+"%(ext_name)s uzantısı: %(collection)s kaynağı genişletilemiyor: Böyle bir"
+" kaynak yok"
 
 #: cinder/api/openstack/__init__.py:110
 #, python-format
 msgid "Extension %(ext_name)s extending resource: %(collection)s"
-msgstr ""
+msgstr "%(ext_name)s uzantısı kaynağı genişletiyor: %(collection)s"
 
 #: cinder/api/openstack/__init__.py:126
 msgid ""
@@ -1519,11 +1535,11 @@ msgstr ""
 
 #: cinder/api/openstack/wsgi.py:212 cinder/api/openstack/wsgi.py:628
 msgid "cannot understand JSON"
-msgstr ""
+msgstr "JSON dosyası anlaşılamadı"
 
 #: cinder/api/openstack/wsgi.py:633
 msgid "too many body keys"
-msgstr ""
+msgstr "Çok sayıda gövde anahtarları"
 
 #: cinder/api/openstack/wsgi.py:671
 #, python-format
@@ -1533,29 +1549,29 @@ msgstr ""
 #: cinder/api/openstack/wsgi.py:676
 #, python-format
 msgid "Fault thrown: %s"
-msgstr ""
+msgstr "Hata fırlatıldı: %s"
 
 #: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "HTTP exception thrown: %s"
-msgstr ""
+msgstr "HTTP istisnası fırlatıldı: %s"
 
 #: cinder/api/openstack/wsgi.py:787
 msgid "Empty body provided in request"
-msgstr ""
+msgstr "İstekteki sağlayıcı gövdesi boş"
 
 #: cinder/api/openstack/wsgi.py:793
 msgid "Unrecognized Content-Type provided in request"
-msgstr ""
+msgstr "İstekte tanınamayan içerik türü sağlayıcısı"
 
 #: cinder/api/openstack/wsgi.py:797
 msgid "No Content-Type provided in request"
-msgstr ""
+msgstr "İstekte içerik türü sağlayıcısı yok"
 
 #: cinder/api/openstack/wsgi.py:908
 #, python-format
 msgid "There is no such action: %s"
-msgstr ""
+msgstr "Böyle bir işlem yok: %s"
 
 #: cinder/api/openstack/wsgi.py:911 cinder/api/openstack/wsgi.py:924
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
@@ -1567,11 +1583,11 @@ msgstr ""
 #: cinder/api/v2/volume_metadata.py:52 cinder/api/v2/volume_metadata.py:70
 #: cinder/api/v2/volume_metadata.py:95 cinder/api/v2/volume_metadata.py:120
 msgid "Malformed request body"
-msgstr ""
+msgstr "Kusurlu istek gövdesi"
 
 #: cinder/api/openstack/wsgi.py:921
 msgid "Unsupported Content-Type"
-msgstr ""
+msgstr "Desteklenmeyen içerik türü"
 
 #: cinder/api/openstack/wsgi.py:933
 msgid "Malformed request url"
@@ -1603,7 +1619,7 @@ msgstr ""
 
 #: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
-msgstr ""
+msgstr "Bu istek sayı limitlidir."
 
 #: cinder/api/v1/snapshot_metadata.py:37 cinder/api/v1/snapshot_metadata.py:117
 #: cinder/api/v1/snapshot_metadata.py:156 cinder/api/v2/snapshot_metadata.py:37
@@ -1618,12 +1634,12 @@ msgstr ""
 #: cinder/api/v2/snapshot_metadata.py:149 cinder/api/v2/volume_metadata.py:138
 #: cinder/api/v2/volume_metadata.py:148
 msgid "Metadata item was not found"
-msgstr ""
+msgstr "İçerik özelliği bilgisi bulunamadı"
 
 #: cinder/api/v1/snapshots.py:119 cinder/api/v2/snapshots.py:120
 #, python-format
 msgid "Delete snapshot with id: %s"
-msgstr ""
+msgstr "%s id'li sistem görüntüsü siliniyor"
 
 #: cinder/api/v1/snapshots.py:173 cinder/api/v2/snapshots.py:184
 msgid "'volume_id' must be specified"
@@ -1632,7 +1648,7 @@ msgstr ""
 #: cinder/api/v1/snapshots.py:182 cinder/api/v2/snapshots.py:193
 #, python-format
 msgid "Create snapshot from volume %s"
-msgstr ""
+msgstr "%s biriminden sistem görüntüsü oluşturuluyor"
 
 #: cinder/api/v1/snapshots.py:186 cinder/api/v2/snapshots.py:202
 #, python-format
@@ -1648,17 +1664,17 @@ msgstr ""
 #: cinder/api/v1/volumes.py:114
 #, python-format
 msgid "vol=%s"
-msgstr ""
+msgstr "birim=%s"
 
 #: cinder/api/v1/volumes.py:293 cinder/api/v2/volumes.py:181
 #, python-format
 msgid "Delete volume with id: %s"
-msgstr ""
+msgstr "%s id'li birim siliniyor"
 
 #: cinder/api/v1/volumes.py:347 cinder/api/v1/volumes.py:351
 #: cinder/api/v2/volumes.py:251 cinder/api/v2/volumes.py:255
 msgid "Invalid imageRef provided."
-msgstr ""
+msgstr "Geçersiz imaj referansı verildi."
 
 #: cinder/api/v1/volumes.py:391 cinder/api/v2/volumes.py:308
 #, python-format
@@ -1673,7 +1689,7 @@ msgstr ""
 #: cinder/api/v1/volumes.py:415 cinder/api/v2/volumes.py:331
 #, python-format
 msgid "Create volume of %s GB"
-msgstr ""
+msgstr "%s GB'lık birim oluştur"
 
 #: cinder/api/v1/volumes.py:504
 #, python-format
@@ -1698,7 +1714,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1723,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2038,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2103,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2114,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
+#, python-format
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:702
 #, python-format
-msgid "Creating base image='%s'"
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2937,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2959,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3126,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3144,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3077,51 +3156,51 @@ msgstr ""
 #: cinder/db/sqlalchemy/api.py:192
 #, python-format
 msgid "Unrecognized read_deleted value '%s'"
-msgstr ""
+msgstr "Tanınmayan silinmiş okuma değeri '%s'"
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3130,11 +3209,11 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migration.py:37
 msgid "version should be an integer"
-msgstr ""
+msgstr "Sürüm tam sayı olmak zorunda"
 
 #: cinder/db/sqlalchemy/migration.py:64
 msgid "Upgrade DB using Essex release first."
-msgstr ""
+msgstr "Önce Essex sürümünü kullanarak veritabanı yükseltimi yapın."
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/001_cinder_init.py:240
 msgid "Exception while creating table."
@@ -3172,11 +3251,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3484,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
-msgstr ""
+msgstr "syslog servisi bunlardan biri olmak zorundadır: %s"
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3510,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3462,12 +3541,12 @@ msgstr ""
 #: cinder/openstack/common/periodic_task.py:177
 #, python-format
 msgid "Running periodic task %(full_task_name)s"
-msgstr ""
+msgstr "%(full_task_name)s periyodik görevi çalışıyor"
 
 #: cinder/openstack/common/periodic_task.py:186
 #, python-format
 msgid "Error during %(full_task_name)s: %(e)s"
-msgstr ""
+msgstr "%(full_task_name)s sırasında hata: %(e)s"
 
 #: cinder/openstack/common/policy.py:149
 #, python-format
@@ -3494,37 +3573,37 @@ msgstr ""
 #: cinder/openstack/common/processutils.py:127
 #, python-format
 msgid "Got unknown keyword args to utils.execute: %r"
-msgstr ""
+msgstr "utils.execute için bilinmeyen anahtar kelime argümanları: %r"
 
 #: cinder/openstack/common/processutils.py:142
 #, python-format
 msgid "Running cmd (subprocess): %s"
-msgstr ""
+msgstr "Çalışan komut(alt süreç): %s"
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:448
 #, python-format
 msgid "Result was %s"
-msgstr ""
+msgstr "Sonuç %s"
 
 #: cinder/openstack/common/processutils.py:179
 #, python-format
 msgid "%r failed. Retrying."
-msgstr ""
+msgstr "%r hatalı. Yeniden deneniyor."
 
 #: cinder/openstack/common/processutils.py:218
 #, python-format
 msgid "Running cmd (SSH): %s"
-msgstr ""
+msgstr "Çalışan komut(SSH): %s"
 
 #: cinder/openstack/common/processutils.py:220
 msgid "Environment not supported over SSH"
-msgstr ""
+msgstr "SSH üzerinde ortam desteklenmemektedir."
 
 #: cinder/openstack/common/processutils.py:224
 msgid "process_input not supported over SSH"
-msgstr ""
+msgstr "SSH üzerinde process_input desteklenmemektedir."
 
 #: cinder/openstack/common/request_utils.py:66
 #, python-format
@@ -3547,7 +3626,7 @@ msgstr ""
 #: cinder/openstack/common/service.py:269
 #, python-format
 msgid "Caught %s, exiting"
-msgstr ""
+msgstr "%s yakalandı, çıkılıyor"
 
 #: cinder/openstack/common/service.py:187
 msgid "Exception during rpc cleanup."
@@ -3559,7 +3638,7 @@ msgstr ""
 
 #: cinder/openstack/common/service.py:275
 msgid "Unhandled exception"
-msgstr ""
+msgstr "Yakalanmamış istisna"
 
 #: cinder/openstack/common/service.py:308
 msgid "Forking too fast, sleeping"
@@ -3603,7 +3682,7 @@ msgstr ""
 #: cinder/openstack/common/sslutils.py:98
 #, python-format
 msgid "Invalid SSL version : %s"
-msgstr ""
+msgstr "Geçersiz SSL sürümü: %s"
 
 #: cinder/openstack/common/strutils.py:92
 #, python-format
@@ -3654,7 +3733,7 @@ msgstr ""
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:487
 msgid "DB exception wrapped."
-msgstr ""
+msgstr "Veritabanı istisnası yakalandı."
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:538
 #, python-format
@@ -3758,12 +3837,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3797,7 +3876,7 @@ msgstr ""
 #: cinder/scheduler/scheduler_options.py:68
 #, python-format
 msgid "Could not stat scheduler options file %(filename)s: '%(e)s'"
-msgstr ""
+msgstr "%(filename)s dosyası için zamanlayıcı seçenekleri başlatılamadı: '%(e)s'"
 
 #: cinder/scheduler/scheduler_options.py:78
 #, python-format
@@ -3834,7 +3913,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3851,24 +3930,26 @@ msgstr ""
 #: cinder/tests/fake_utils.py:70
 #, python-format
 msgid "Faking execution of cmd (subprocess): %s"
-msgstr ""
+msgstr "Komutun(alt sürecin) taklit çalıştırılması: %s"
 
 #: cinder/tests/fake_utils.py:78
 #, python-format
 msgid "Faked command matched %s"
-msgstr ""
+msgstr "Sahte komut eşleşti %s"
 
 #: cinder/tests/fake_utils.py:94
 #, python-format
 msgid "Faked command raised an exception %s"
-msgstr ""
+msgstr "Sahte komut bir istisna fırlattı %s"
 
 #: cinder/tests/fake_utils.py:97
 #, python-format
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
+"Sahte komuta verilen yanıt: standartçıktı='%(stdout)s' "
+"standarthata='%(stderr)s'"
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3981,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3990,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +4003,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4021,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -3964,33 +4045,36 @@ msgid ""
 "Status Code: %(_status)s\n"
 "Body: %(_body)s"
 msgstr ""
+"%(message)s\n"
+"Durum Kodu: %(_status)s\n"
+"Gövde: %(_body)s"
 
 #: cinder/tests/integrated/api/client.py:44
 msgid "Authentication error"
-msgstr ""
+msgstr "Kimlik doğrulama hatası"
 
 #: cinder/tests/integrated/api/client.py:52
 msgid "Authorization error"
-msgstr ""
+msgstr "Yetkilendirme hatası"
 
 #: cinder/tests/integrated/api/client.py:60
 msgid "Item not found"
-msgstr ""
+msgstr "Öğe bulunamadı"
 
 #: cinder/tests/integrated/api/client.py:97
 #, python-format
 msgid "Doing %(method)s on %(relative_url)s"
-msgstr ""
+msgstr "%(relative_url)s'de %(method)s işlemleri yapılıyor"
 
 #: cinder/tests/integrated/api/client.py:100
 #, python-format
 msgid "Body: %s"
-msgstr ""
+msgstr "Gövde: %s"
 
 #: cinder/tests/integrated/api/client.py:124
 #, python-format
 msgid "%(auth_uri)s => code %(http_status)s"
-msgstr ""
+msgstr "%(auth_uri)s => kodu %(http_status)s"
 
 #: cinder/tests/integrated/api/client.py:147
 #, python-format
@@ -4200,66 +4284,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4377,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4405,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4439,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4459,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4468,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4482,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4531,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4734,7 +4819,7 @@ msgstr ""
 #: cinder/volume/volume_types.py:43
 #, python-format
 msgid "DB error: %s"
-msgstr ""
+msgstr "Veritabanı hatası: %s"
 
 #: cinder/volume/qos_specs.py:123 cinder/volume/qos_specs.py:140
 #: cinder/volume/qos_specs.py:272 cinder/volume/volume_types.py:52
@@ -4773,14 +4858,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4991,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5071,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5392,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5726,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5760,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5836,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6654,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6949,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7123,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7292,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7323,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7361,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7372,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7484,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7708,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7893,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7916,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8022,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8274,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8339,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9454,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9577,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10256,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10416,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10536,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10903,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10911,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10952,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/uk/LC_MESSAGES/cinder.po b/cinder/locale/uk/LC_MESSAGES/cinder.po
index 5e37ed90c..675a678ff 100644
--- a/cinder/locale/uk/LC_MESSAGES/cinder.po
+++ b/cinder/locale/uk/LC_MESSAGES/cinder.po
@@ -1,16 +1,18 @@
-# Ukrainian translation for cinder
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the cinder package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+# Ukrainian translations for cinder.
+# Copyright (C) 2014 ORGANIZATION
+# This file is distributed under the same license as the cinder project.
 #
+# Translators:
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011
 msgid ""
 msgstr ""
-"Project-Id-Version:  cinder\n"
-"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-03-29 06:10+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"
+"Project-Id-Version:  Cinder\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
+"Language-Team: Ukrainian "
+"(http://www.transifex.com/projects/p/cinder/language/uk/)\n"
 "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
 "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n"
 "MIME-Version: 1.0\n"
@@ -58,11 +60,11 @@ msgstr ""
 
 #: cinder/exception.py:124
 msgid "Not authorized."
-msgstr ""
+msgstr "Не авторизовано."
 
 #: cinder/exception.py:129
 msgid "User does not have admin privileges"
-msgstr ""
+msgstr "У користувача відсутні адміністративні повноваження"
 
 #: cinder/exception.py:133
 #, python-format
@@ -70,9 +72,9 @@ msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
 #: cinder/exception.py:137
-#, fuzzy, python-format
+#, python-format
 msgid "Not authorized for image %(image_id)s."
-msgstr "без порядку для повідомлень: %s"
+msgstr ""
 
 #: cinder/exception.py:141
 msgid "Volume driver not ready."
@@ -133,7 +135,7 @@ msgstr ""
 #: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
-msgstr ""
+msgstr "%(err)s"
 
 #: cinder/exception.py:197
 #, python-format
@@ -166,7 +168,7 @@ msgstr ""
 
 #: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
-msgstr ""
+msgstr "Ресурс не знайдено."
 
 #: cinder/exception.py:228
 #, python-format
@@ -252,7 +254,7 @@ msgstr ""
 #: cinder/exception.py:295
 #, python-format
 msgid "Image %(image_id)s could not be found."
-msgstr ""
+msgstr "Образ %(image_id)s не знайдено."
 
 #: cinder/exception.py:299
 #, python-format
@@ -737,34 +739,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +785,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +804,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -871,7 +873,7 @@ msgstr ""
 #: cinder/utils.py:699
 #, python-format
 msgid "Could not remove tmpdir: %s"
-msgstr ""
+msgstr "Не вдалось видалити тимчасову директорію: %s"
 
 #: cinder/utils.py:760
 #, python-format
@@ -1327,26 +1329,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1372,14 +1386,14 @@ msgid "Listing volume transfers"
 msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:147
-#, fuzzy, python-format
+#, python-format
 msgid "Creating new volume transfer %s"
-msgstr "Створити розділ на %s ГБ"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:162
-#, fuzzy, python-format
+#, python-format
 msgid "Creating transfer of volume %s"
-msgstr "Створити розділ на %s ГБ"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:183
 #, python-format
@@ -1387,9 +1401,9 @@ msgid "Accepting volume transfer %s"
 msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:196
-#, fuzzy, python-format
+#, python-format
 msgid "Accepting transfer %s"
-msgstr "Створити розділ на %s ГБ"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:217
 #, python-format
@@ -1452,7 +1466,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1712,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1721,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2036,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2101,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2112,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
+#, python-format
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Deleting base image='%s'"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:457
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:463
+#, python-format
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:474
+#, python-format
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:485
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Piping cmd1='%s' into..."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:486
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "cmd2='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
+#, python-format
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:702
 #, python-format
-msgid "Creating base image='%s'"
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2935,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2957,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3124,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3142,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3156,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3130,7 +3207,7 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migration.py:37
 msgid "version should be an integer"
-msgstr ""
+msgstr "версія повинна бути цілим числом"
 
 #: cinder/db/sqlalchemy/migration.py:64
 msgid "Upgrade DB using Essex release first."
@@ -3172,11 +3249,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3482,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
-#, fuzzy, python-format
+#: cinder/openstack/common/log.py:327
+#, python-format
 msgid "Deprecated: %s"
-msgstr "отримано %s"
+msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3508,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3835,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3911,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3945,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3977,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3986,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3999,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4017,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -3953,9 +4030,9 @@ msgid "mount failed."
 msgstr ""
 
 #: cinder/tests/integrated/test_login.py:29
-#, fuzzy, python-format
+#, python-format
 msgid "volume: %s"
-msgstr "Від'єднати том %s"
+msgstr ""
 
 #: cinder/tests/integrated/api/client.py:34
 #, python-format
@@ -4045,9 +4122,9 @@ msgid "status must be available"
 msgstr ""
 
 #: cinder/transfer/api.py:119
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to create transfer record for %s"
-msgstr "Створити розділ на %s ГБ"
+msgstr ""
 
 #: cinder/transfer/api.py:136
 #, python-format
@@ -4200,66 +4277,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4370,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4398,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4432,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4452,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4461,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4475,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4524,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4851,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4794,9 +4872,9 @@ msgstr ""
 
 #: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:284
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
-#, fuzzy, python-format
+#, python-format
 msgid "Creating clone of volume: %s"
-msgstr "Створити розділ на %s ГБ"
+msgstr ""
 
 #: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
@@ -4906,11 +4984,11 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
-#, fuzzy, python-format
+#, python-format
 msgid "Error running SSH command: %s"
-msgstr "Неочікувана помилка при виконанні команди."
+msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:282
 #, python-format
@@ -4986,219 +5064,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5385,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:212
+#, python-format
 msgid "error opening rbd image %s"
-msgstr "Від'єднати том %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:731
+#, python-format
 msgid "not cloneable: %s"
-msgstr "відповідь %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5568,9 +5646,9 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:200
 #: cinder/volume/drivers/solidfire.py:269
 #: cinder/volume/drivers/solidfire.py:364
-#, fuzzy, python-format
+#, python-format
 msgid "API response: %s"
-msgstr "відповідь %s"
+msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:220
 #, python-format
@@ -5641,8 +5719,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5753,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5829,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6194,9 +6272,9 @@ msgid "ExposePaths parameter LunMaskingSCSIProtocolController: %(lunmasking)s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:771
-#, fuzzy, python-format
+#, python-format
 msgid "Error mapping volume %s."
-msgstr "Від'єднати том %s"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:775
 #, python-format
@@ -6378,9 +6456,8 @@ msgid "Ecom server not found."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1153
-#, fuzzy
 msgid "Cannot connect to ECOM server"
-msgstr "Оновлено з'єднання до черги"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1165
 #, python-format
@@ -6570,18 +6647,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6865,93 +6942,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7039,7 +7116,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7208,7 +7285,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7239,12 +7316,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7277,7 +7354,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7288,111 +7365,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7400,77 +7477,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7624,90 +7701,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7809,14 +7886,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7825,100 +7909,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7926,31 +8015,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8171,15 +8267,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8229,12 +8332,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9344,7 +9447,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9402,9 +9505,9 @@ msgid "Auto switching to HTTPS connection to %s"
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:96
-#, fuzzy, python-format
+#, python-format
 msgid "Got response: %s"
-msgstr "відповідь %s"
+msgstr ""
 
 #: cinder/volume/drivers/nexenta/nfs.py:85
 #, python-format
@@ -9467,288 +9570,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10142,7 +10249,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10302,7 +10409,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10422,62 +10529,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10789,7 +10896,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10797,35 +10904,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10833,42 +10945,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/ur/LC_MESSAGES/cinder.po b/cinder/locale/ur/LC_MESSAGES/cinder.po
index 35d71adee..b4c0ea398 100644
--- a/cinder/locale/ur/LC_MESSAGES/cinder.po
+++ b/cinder/locale/ur/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
 # Urdu translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-10-07 06:14+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Urdu "
-"(http://www.transifex.com/projects/p/openstack/language/ur/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/ur/)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/vi_VN/LC_MESSAGES/cinder.po b/cinder/locale/vi_VN/LC_MESSAGES/cinder.po
index c4055129a..6e3b9e072 100644
--- a/cinder/locale/vi_VN/LC_MESSAGES/cinder.po
+++ b/cinder/locale/vi_VN/LC_MESSAGES/cinder.po
@@ -1,17 +1,18 @@
 # Vietnamese (Vietnam) translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
+# ppanhh <vietnamesel10n@gmail.com>, 2013
 msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-05-08 11:44+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Vietnamese (Viet Nam) "
-"(http://www.transifex.com/projects/p/openstack/language/vi_VN/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/vi_VN/)\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -21,20 +22,20 @@ msgstr ""
 #: cinder/context.py:63
 #, python-format
 msgid "Arguments dropped when creating context: %s"
-msgstr ""
+msgstr "Đã bỏ đối số khi tạo ngữ cảnh: %s"
 
 #: cinder/context.py:107
 #, python-format
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
-msgstr ""
+msgstr "read_deleted chỉ có thể là 'không', 'có' hoặc 'chỉ', không phải %r"
 
 #: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
-msgstr ""
+msgstr "Xảy ra lỗi chưa xác định thuộc về hệ thống ."
 
 #: cinder/exception.py:88
 msgid "Exception in string format operation"
-msgstr ""
+msgstr "Lỗi exception trong tiến trình định dạng chuỗi"
 
 #: cinder/exception.py:107
 #, python-format
@@ -58,21 +59,21 @@ msgstr ""
 
 #: cinder/exception.py:124
 msgid "Not authorized."
-msgstr ""
+msgstr "Chưa được xác nhận."
 
 #: cinder/exception.py:129
 msgid "User does not have admin privileges"
-msgstr ""
+msgstr "Người dùng không có quyền truy cập dạng quản trị viên"
 
 #: cinder/exception.py:133
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
-msgstr ""
+msgstr "Chính sách không cho phép thực hiện %(action)s."
 
 #: cinder/exception.py:137
 #, python-format
 msgid "Not authorized for image %(image_id)s."
-msgstr ""
+msgstr "Không xác nhận cho hình ảnh %(image_id)s."
 
 #: cinder/exception.py:141
 msgid "Volume driver not ready."
@@ -80,7 +81,7 @@ msgstr ""
 
 #: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
-msgstr ""
+msgstr "Không chấp nhận các tham số."
 
 #: cinder/exception.py:150
 #, python-format
@@ -96,14 +97,16 @@ msgstr ""
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
 msgstr ""
+"Âm lượng %(volume_id)s vẫn được đính kèm, hãy bỏ phần đính kèm âm lượng "
+"trước."
 
 #: cinder/exception.py:163
 msgid "Failed to load data into json format"
-msgstr ""
+msgstr "Xảy ra lỗi khi tải dữ liệu thành định dạng json"
 
 #: cinder/exception.py:167
 msgid "The results are invalid."
-msgstr ""
+msgstr "Các yêu cầu không hợp lệ."
 
 #: cinder/exception.py:171
 #, python-format
@@ -123,7 +126,7 @@ msgstr ""
 #: cinder/exception.py:183
 #, python-format
 msgid "Invalid content type %(content_type)s."
-msgstr ""
+msgstr "Loại nội dung %(content_type)s không hợp lệ."
 
 #: cinder/exception.py:187
 #, python-format
@@ -133,7 +136,7 @@ msgstr ""
 #: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
-msgstr ""
+msgstr "%(err)s"
 
 #: cinder/exception.py:197
 #, python-format
@@ -147,12 +150,12 @@ msgstr ""
 
 #: cinder/exception.py:206
 msgid "Service is unavailable at this time."
-msgstr ""
+msgstr "Hiện dịch vụ không thể sử dụng được vào thời điểm này"
 
 #: cinder/exception.py:210
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
-msgstr ""
+msgstr "Không chấp nhận hình ảnh %(image_id)s vì:  %(reason)s"
 
 #: cinder/exception.py:214
 #, python-format
@@ -166,7 +169,7 @@ msgstr ""
 
 #: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
-msgstr ""
+msgstr "Không tìm thấy nguồn tài nguyên."
 
 #: cinder/exception.py:228
 #, python-format
@@ -737,34 +740,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +786,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +805,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1330,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1467,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1713,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1722,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2037,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2102,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2113,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2936,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2958,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3125,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3143,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3157,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3250,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3483,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3509,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3651,10 +3729,12 @@ msgstr ""
 #: cinder/openstack/common/db/exception.py:44
 msgid "Invalid Parameter: Unicode is not supported by the current database."
 msgstr ""
+"Thông số không hợp lệ: Unicode hiện chưa được hỗ trợ bởi hệ cơ sở dữ liệu"
+" hiện tại."
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:487
 msgid "DB exception wrapped."
-msgstr ""
+msgstr "Lỗi exception DB khi bao bọc."
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:538
 #, python-format
@@ -3758,12 +3838,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3914,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3948,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3980,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3989,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +4002,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4020,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4280,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4373,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4401,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4435,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4455,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4464,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4478,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4527,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4854,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4987,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5067,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5388,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5722,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5756,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5832,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6650,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6945,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7119,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7288,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7319,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7357,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7368,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7480,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7704,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7889,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7912,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8018,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8270,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8335,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9450,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9573,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10252,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10412,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10532,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10899,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10907,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10948,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/zh_CN/LC_MESSAGES/cinder.po b/cinder/locale/zh_CN/LC_MESSAGES/cinder.po
index c6a2e4767..cb08d43f2 100644
--- a/cinder/locale/zh_CN/LC_MESSAGES/cinder.po
+++ b/cinder/locale/zh_CN/LC_MESSAGES/cinder.po
@@ -1,16 +1,23 @@
-# Chinese (Simplified) translation for cinder
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the cinder package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+# Chinese (Simplified, China) translations for cinder.
+# Copyright (C) 2014 ORGANIZATION
+# This file is distributed under the same license as the cinder project.
 #
-msgid ""
-msgstr ""
-"Project-Id-Version:  cinder\n"
-"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-03-29 06:10+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"
+# Translators:
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011
+# kaizh <zakir.exe@gmail.com>, 2013
+# openstack <malei@cn.fujitsu.com>, 2013
+# Tom Fifield <tom@openstack.org>, 2013
+# yan haifeng <yanheven@gmail.com>, 2014
+# Yu Zhang, 2014
+msgid ""
+msgstr ""
+"Project-Id-Version:  Cinder\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
+"Language-Team: Chinese (China) "
+"(http://www.transifex.com/projects/p/cinder/language/zh_CN/)\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -20,12 +27,12 @@ msgstr ""
 #: cinder/context.py:63
 #, python-format
 msgid "Arguments dropped when creating context: %s"
-msgstr ""
+msgstr "创建上下文时已删除自变量:%s"
 
 #: cinder/context.py:107
 #, python-format
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
-msgstr ""
+msgstr "read_deleted 只能是“no”、“yes”或“only”其中一项,而不能是 %r"
 
 #: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
@@ -33,12 +40,12 @@ msgstr "发生未知异常。"
 
 #: cinder/exception.py:88
 msgid "Exception in string format operation"
-msgstr ""
+msgstr "字符串格式操作中发生异常"
 
 #: cinder/exception.py:107
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
-msgstr ""
+msgstr "从存储卷后端 API 返回了不正确或意外的响应:%(data)s"
 
 #: cinder/exception.py:112
 #, python-format
@@ -69,9 +76,9 @@ msgid "Policy doesn't allow %(action)s to be performed."
 msgstr "政策不允许 %(action)s 被执行。"
 
 #: cinder/exception.py:137
-#, fuzzy, python-format
+#, python-format
 msgid "Not authorized for image %(image_id)s."
-msgstr "没有为镜像 %(image_id)s 找到内核。"
+msgstr "未针对映像 %(image_id)s 授权。"
 
 #: cinder/exception.py:141
 msgid "Volume driver not ready."
@@ -89,21 +96,20 @@ msgstr ""
 #: cinder/exception.py:154
 #, python-format
 msgid "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
-msgstr ""
+msgstr "加载模式 '%(mode)s' 对于卷 %(volume_id)s 无效。"
 
 #: cinder/exception.py:159
-#, fuzzy, python-format
+#, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
-msgstr "卷 %(volume_id)s 没有附加任何东西"
+msgstr "卷 %(volume_id)s 仍然处于连接状态,请先从卷断开连接。"
 
 #: cinder/exception.py:163
 msgid "Failed to load data into json format"
 msgstr "把数据加载为json格式失败"
 
 #: cinder/exception.py:167
-#, fuzzy
 msgid "The results are invalid."
-msgstr "请求无效。"
+msgstr "结果无效。"
 
 #: cinder/exception.py:171
 #, python-format
@@ -157,12 +163,12 @@ msgstr "镜像 %(image_id)s 无法接受,原因是: %(reason)s"
 #: cinder/exception.py:214
 #, python-format
 msgid "The device in the path %(path)s is unavailable: %(reason)s"
-msgstr ""
+msgstr "路径%(path)s 指向的设备不可用:%(reason)s"
 
 #: cinder/exception.py:218
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
-msgstr ""
+msgstr "期望 uuid,但是接收到 %(uuid)s。"
 
 #: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
@@ -183,7 +189,7 @@ msgstr "卷 %(volume_id)s 没有含键 %(metadata_key)s 的元数据。"
 msgid ""
 "Volume %(volume_id)s has no administration metadata with key "
 "%(metadata_key)s."
-msgstr ""
+msgstr "卷 %(volume_id)s 没有任何具有键 %(metadata_key)s 的元数据。"
 
 #: cinder/exception.py:242
 #, python-format
@@ -196,9 +202,9 @@ msgid "Invalid metadata size: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:250
-#, fuzzy, python-format
+#, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
-msgstr "实例 %(instance_id)s 没有键为 %(metadata_key)s 的元数据。"
+msgstr "快照 %(snapshot_id)s 没有任何具有键 %(metadata_key)s 的元数据。"
 
 #: cinder/exception.py:255
 #, python-format
@@ -237,7 +243,7 @@ msgstr "正在删除有快照的卷  %(volume_name)s"
 #: cinder/exception.py:282
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
-msgstr ""
+msgstr "正在删除具有从属卷的快照 %(snapshot_name)s"
 
 #: cinder/exception.py:287
 #, python-format
@@ -270,9 +276,9 @@ msgid "Scheduler Host Filter %(filter_name)s could not be found."
 msgstr "调度器主机过滤器 %(filter_name)s 没有找到。"
 
 #: cinder/exception.py:311
-#, fuzzy, python-format
+#, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
-msgstr "调度器主机过滤器 %(filter_name)s 没有找到。"
+msgstr "找不到调度程序主机衡量器 %(weigher_name)s。"
 
 #: cinder/exception.py:315
 #, python-format
@@ -282,14 +288,14 @@ msgstr "没有找到二进制 %(binary)s 在主机 %(host)s 上。"
 #: cinder/exception.py:319
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
-msgstr ""
+msgstr "预留到期 %(expire)s 无效。"
 
 #: cinder/exception.py:323
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
-msgstr ""
+msgstr "对于下列资源,更改将导致使用量小于 0:%(unders)s"
 
 #: cinder/exception.py:328
 msgid "Quota could not be found"
@@ -298,7 +304,7 @@ msgstr "配额没有找到。"
 #: cinder/exception.py:332
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
-msgstr ""
+msgstr "配额资源 %(unknown)s 未知。"
 
 #: cinder/exception.py:336
 #, python-format
@@ -306,24 +312,24 @@ msgid "Quota for project %(project_id)s could not be found."
 msgstr "没有为项目 %(project_id)s 找到配额。"
 
 #: cinder/exception.py:340
-#, fuzzy, python-format
+#, python-format
 msgid "Quota class %(class_name)s could not be found."
-msgstr "找不到类 %(class_name)s :异常 %(exception)s"
+msgstr "找不到配额类 %(class_name)s。"
 
 #: cinder/exception.py:344
-#, fuzzy, python-format
+#, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
-msgstr "没有为项目 %(project_id)s 找到配额。"
+msgstr "找不到项目 %(project_id)s 的配额使用量。"
 
 #: cinder/exception.py:348
-#, fuzzy, python-format
+#, python-format
 msgid "Quota reservation %(uuid)s could not be found."
-msgstr "用户 %(user_id)s 没有找到。"
+msgstr "找不到配额预留 %(uuid)s。"
 
 #: cinder/exception.py:352
-#, fuzzy, python-format
+#, python-format
 msgid "Quota exceeded for resources: %(overs)s"
-msgstr "超出配额"
+msgstr "对于资源,已超过配额:%(overs)s"
 
 #: cinder/exception.py:356
 #, python-format
@@ -331,9 +337,9 @@ msgid "File %(file_path)s could not be found."
 msgstr "找不到文件 %(file_path)s。"
 
 #: cinder/exception.py:365
-#, fuzzy, python-format
+#, python-format
 msgid "Volume Type %(id)s already exists."
-msgstr "卷类型 %(name)s 已经存在。"
+msgstr "卷类型 %(id)s 已存在。"
 
 #: cinder/exception.py:369
 #, python-format
@@ -356,9 +362,9 @@ msgid "Could not find config at %(path)s"
 msgstr "在 %(path)s 找不到配置文件。"
 
 #: cinder/exception.py:385
-#, fuzzy, python-format
+#, python-format
 msgid "Could not find parameter %(param)s"
-msgstr "在 %(path)s 找不到配置文件。"
+msgstr "找不到参数 %(param)s"
 
 #: cinder/exception.py:389
 #, python-format
@@ -385,17 +391,17 @@ msgstr ""
 #: cinder/exception.py:415
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
-msgstr ""
+msgstr "已超过允许的最大卷数 (%(allowed)d)"
 
 #: cinder/exception.py:419
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
-msgstr ""
+msgstr "已超过允许的最大快照数 (%(allowed)d)"
 
 #: cinder/exception.py:423
-#, fuzzy, python-format
+#, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
-msgstr "检测到不止一个名称为 %(vol_name) 的卷。"
+msgstr "检测到多个具有名称 %(vol_name)s 的卷"
 
 #: cinder/exception.py:427
 #, python-format
@@ -405,62 +411,62 @@ msgstr "无法创建名称为 %(name)s 规格为 %(extra_specs)s 的卷类型。
 #: cinder/exception.py:432
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
-msgstr ""
+msgstr "命令 %(cmd)s 未知或不受支持"
 
 #: cinder/exception.py:436
-#, fuzzy, python-format
+#, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
-msgstr "错误格式的消息体: %(reason)s"
+msgstr "对命令 %(cmd)s 的响应的格式不正确:%(reason)s"
 
 #: cinder/exception.py:440
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
-msgstr ""
+msgstr "操作失败,并且 status=%(status)s。完全转储:%(data)s"
 
 #: cinder/exception.py:444
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
-msgstr ""
+msgstr "无法更新 Glance 元数据,对于卷标识 %(volume_id)s,键 %(key)s 存在"
 
 #: cinder/exception.py:449
 #, python-format
 msgid "Glance metadata for volume/snapshot %(id)s cannot be found."
-msgstr ""
+msgstr "Glance中无法找到卷/镜像 %(id)s 的元数据"
 
 #: cinder/exception.py:453
 #, python-format
 msgid "Failed to export for volume: %(reason)s"
-msgstr ""
+msgstr "输出卷失败:%(reason)s"
 
 #: cinder/exception.py:457
 #, python-format
 msgid "Failed to create metadata for volume: %(reason)s"
-msgstr ""
+msgstr "未能为卷创建元数据:%(reason)s"
 
 #: cinder/exception.py:461
 #, python-format
 msgid "Failed to update metadata for volume: %(reason)s"
-msgstr ""
+msgstr "未能更新卷的元数据:%(reason)s"
 
 #: cinder/exception.py:465
 #, python-format
 msgid "Failed to copy metadata to volume: %(reason)s"
-msgstr ""
+msgstr "未能复制元数据到卷:%(reason)s"
 
 #: cinder/exception.py:469
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to copy image to volume: %(reason)s"
-msgstr "无法找到 %s 卷"
+msgstr "未能将映像复制到卷:%(reason)s"
 
 #: cinder/exception.py:473
 msgid "Invalid Ceph args provided for backup rbd operation"
-msgstr ""
+msgstr "为备份rbd操作提供的Ceph参数无效"
 
 #: cinder/exception.py:477
 msgid "An error has occurred during backup operation"
-msgstr ""
+msgstr "在备份过程中出现一个错误"
 
 #: cinder/exception.py:481
 msgid "Unsupported backup metadata version requested"
@@ -472,21 +478,21 @@ msgstr ""
 
 #: cinder/exception.py:489
 msgid "Backup RBD operation failed"
-msgstr ""
+msgstr "备份RBD操作失败"
 
 #: cinder/exception.py:493
-#, fuzzy, python-format
+#, python-format
 msgid "Backup %(backup_id)s could not be found."
-msgstr "没有找到LDAP用户组 %(group_id)s。"
+msgstr "找不到备份 %(backup_id)s。"
 
 #: cinder/exception.py:497
 msgid "Failed to identify volume backend."
 msgstr ""
 
 #: cinder/exception.py:501
-#, fuzzy, python-format
+#, python-format
 msgid "Invalid backup: %(reason)s"
-msgstr "无效的后台:%s"
+msgstr "备份无效:%(reason)s"
 
 #: cinder/exception.py:505
 #, python-format
@@ -494,9 +500,9 @@ msgid "Connection to swift failed: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:509
-#, fuzzy, python-format
+#, python-format
 msgid "Transfer %(transfer_id)s could not be found."
-msgstr "镜像 %(image_id)s 没有找到。"
+msgstr "无法找到转换器%(transfer_id)s"
 
 #: cinder/exception.py:513
 #, python-format
@@ -576,20 +582,20 @@ msgstr ""
 
 #: cinder/exception.py:582
 msgid "Failed to encode json data."
-msgstr ""
+msgstr "编码JSON数据失败"
 
 #: cinder/exception.py:586
 msgid "Login on ESM failed."
-msgstr ""
+msgstr "无法登录ESM"
 
 #: cinder/exception.py:590
 msgid "Relogin on ESM failed."
-msgstr ""
+msgstr "重新登录ESM失败"
 
 #: cinder/exception.py:594
 #, python-format
 msgid "Group with name \"%(group_name)s\" not found."
-msgstr ""
+msgstr "名字为“%(group_name)s”无法找到"
 
 #: cinder/exception.py:598
 #, python-format
@@ -606,33 +612,33 @@ msgid "Zadara Cinder Driver exception."
 msgstr ""
 
 #: cinder/exception.py:611
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to create server object for initiator %(name)s"
-msgstr "无法在存储库 %(sr_ref)s 上为实例 %(instance_name)s 创建 VDI"
+msgstr "无法为发起方 %(name)s 创建服务器对象"
 
 #: cinder/exception.py:615
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find server object for initiator %(name)s"
-msgstr "无法找到实例 %s 的宿主机"
+msgstr "无法为发起方 %(name)s 找到服务器对象"
 
 #: cinder/exception.py:619
 msgid "Unable to find any active VPSA controller"
-msgstr ""
+msgstr "找不到任何活动 VPSA 控制器"
 
 #: cinder/exception.py:623
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
-msgstr ""
+msgstr "未能针对卷 %(name)s 检索到附件"
 
 #: cinder/exception.py:627
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
-msgstr ""
+msgstr "卷 %(name)s 的附件信息无效:%(reason)s"
 
 #: cinder/exception.py:631
-#, fuzzy, python-format
+#, python-format
 msgid "Bad HTTP response status %(status)s"
-msgstr "无效的服务器状态:%(status)s"
+msgstr "HTTP 响应状态 %(status)s 不正确"
 
 #: cinder/exception.py:636
 msgid "Bad response from SolidFire API"
@@ -648,9 +654,9 @@ msgid "Error in SolidFire API response: data=%(data)s"
 msgstr "SolidFire API响应里发生错误:data=%(data)s"
 
 #: cinder/exception.py:648
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
-msgstr "无法找到帐户 %(account_name) on Solidfire 设备"
+msgstr "无法在 Solidfire 设备上找到帐户 %(account_name)s"
 
 #: cinder/exception.py:654
 #, python-format
@@ -658,27 +664,25 @@ msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
 #: cinder/exception.py:659
-#, fuzzy
 msgid "Unknown NFS exception"
-msgstr "发生未知异常。"
+msgstr "NFS 异常未知"
 
 #: cinder/exception.py:663
 msgid "No mounted NFS shares found"
-msgstr ""
+msgstr "找不到任何已安装的 NFS 共享项"
 
 #: cinder/exception.py:667 cinder/exception.py:680
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
-msgstr ""
+msgstr "不存在任何可主管 %(volume_size)sG 的共享项"
 
 #: cinder/exception.py:672
-#, fuzzy
 msgid "Unknown Gluster exception"
-msgstr "发生未知异常。"
+msgstr "Gluster 异常未知"
 
 #: cinder/exception.py:676
 msgid "No mounted Gluster shares found"
-msgstr ""
+msgstr "找不到任何已安装的 Gluster 共享项"
 
 #: cinder/exception.py:684
 #, python-format
@@ -739,36 +743,36 @@ msgstr "JSON文件表示策略。"
 msgid "Rule checked when requested rule is not found"
 msgstr "请求的规则找不到时的检查缺省规则。"
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
-msgstr ""
+msgstr "已创建预留 %s"
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
-msgstr ""
+msgstr "无法交付预留 %s"
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
-msgstr ""
+msgstr "无法回滚预留 %s"
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
-msgstr ""
+msgstr "无法注册资源"
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
-msgstr ""
+msgstr "无法注册多个资源"
 
 #: cinder/quota_utils.py:46
 #, python-format
@@ -779,23 +783,23 @@ msgstr ""
 
 #: cinder/quota_utils.py:56 cinder/transfer/api.py:168
 #: cinder/volume/flows/api/create_volume.py:520
-#, fuzzy, python-format
+#, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create volume (%(d_consumed)d "
 "volumes already consumed)"
-msgstr "%(pid)s 的配额超出,尝试创建 %(size)sG 的卷"
+msgstr ""
 
-#: cinder/service.py:100
-#, fuzzy, python-format
+#: cinder/service.py:99
+#, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
-msgstr "启动 %(topic)s 节点 (版本 %(vcs_string)s)"
+msgstr "正在启动 %(topic)s 节点 (V%(version_string)s)"
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -804,40 +808,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr "因无数据库记录,服务已被中止"
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr "服务数据库对象消失,正在重新创建。"
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr "与模型服务器(model server)的连接已恢复!"
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr "失去与模型服务器的连接"
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
-msgstr ""
+msgstr "serve() 只能调用一次"
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
-#, fuzzy
 msgid "Full set of CONF:"
-msgstr "标记全集:"
+msgstr "存在以下完整的一组配置:"
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -845,7 +848,7 @@ msgstr ""
 #: cinder/utils.py:97
 #, python-format
 msgid "Can not translate %s to integer."
-msgstr ""
+msgstr "无法把 %s 转换成整数"
 
 #: cinder/utils.py:128
 #, python-format
@@ -853,14 +856,13 @@ msgid "May specify only one of %s"
 msgstr ""
 
 #: cinder/utils.py:213
-#, fuzzy
 msgid "Specify a password or private_key"
-msgstr "指定san_password或者san_private_key"
+msgstr "请指定密码或 private_key"
 
 #: cinder/utils.py:229
-#, fuzzy, python-format
+#, python-format
 msgid "Error connecting via ssh: %s"
-msgstr "正在连接 libvirt:%s"
+msgstr "通过 ssh 进行连接时出错:%s"
 
 #: cinder/utils.py:413
 #, python-format
@@ -873,9 +875,9 @@ msgid "backend %s"
 msgstr "后台 %s"
 
 #: cinder/utils.py:699
-#, fuzzy, python-format
+#, python-format
 msgid "Could not remove tmpdir: %s"
-msgstr "移除容器失败:%s"
+msgstr "未能除去临时目录:%s"
 
 #: cinder/utils.py:760
 #, python-format
@@ -885,7 +887,7 @@ msgstr ""
 #: cinder/utils.py:782
 #, python-format
 msgid "%s is not a string or unicode"
-msgstr ""
+msgstr "%s 不是字符串或 Unicode"
 
 #: cinder/utils.py:786
 #, python-format
@@ -895,33 +897,33 @@ msgstr ""
 #: cinder/utils.py:791
 #, python-format
 msgid "%(name)s has more than %(max_length)s characters."
-msgstr ""
+msgstr "%(name)s 包含的字符超过 %(max_length)s 个。"
 
 #: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find cert_file : %s"
-msgstr "无法找到地址 %r"
+msgstr "找不到 cert_file:%s"
 
 #: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find ca_file : %s"
-msgstr "无法找到地址 %r"
+msgstr "找不到 ca_file:%s"
 
 #: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find key_file : %s"
-msgstr "无法找到地址 %r"
+msgstr "找不到 key_file:%s"
 
 #: 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 ""
+msgstr "以 SSL 方式运行服务器时,必须在配置文件中同时指定 cert_file 和 key_file 选项值"
 
 #: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
-msgstr ""
+msgstr "在尝试时间达到 30 秒之后未能绑定至 %(host)s:%(port)s"
 
 #: cinder/wsgi.py:215
 #, python-format
@@ -1030,14 +1032,14 @@ msgstr "调用扩展工厂 %s"
 #: cinder/api/extensions.py:277
 #, python-format
 msgid "osapi_volume_extension is set to deprecated path: %s"
-msgstr ""
+msgstr "osapi_volume_extension 已设置为建议不要使用的路径:%s"
 
 #: cinder/api/extensions.py:279
 #, python-format
 msgid ""
 "Please set your flag or cinder.conf settings for osapi_volume_extension "
 "to: %s"
-msgstr ""
+msgstr "请将 osapi_volume_extension 的标记或 cinder.conf 设置设为:%s"
 
 #: cinder/api/extensions.py:288
 #, python-format
@@ -1080,27 +1082,27 @@ msgstr "subclasses必须执行construct()!"
 #: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
-msgstr ""
+msgstr "正在将 %(resource)s“%(id)s”更新为“%(update)r”"
 
 #: cinder/api/contrib/backups.py:161
 #, python-format
 msgid "show called for member %s"
-msgstr ""
+msgstr "已针对成员 %s 调用 show 方法"
 
 #: cinder/api/contrib/backups.py:173
-#, fuzzy, python-format
+#, python-format
 msgid "delete called for member %s"
-msgstr "修改用户 %s 的私钥"
+msgstr "已针对成员 %s 调用 delete 方法"
 
 #: cinder/api/contrib/backups.py:176
-#, fuzzy, python-format
+#, python-format
 msgid "Delete backup with id: %s"
-msgstr "删除id为 %s 的快照"
+msgstr "请删除具有以下标识的备份:%s"
 
 #: cinder/api/contrib/backups.py:218
-#, fuzzy, python-format
+#, python-format
 msgid "Creating new backup %s"
-msgstr "轮换出%d个备份"
+msgstr "正在创建新备份 %s"
 
 #: cinder/api/contrib/backups.py:228 cinder/api/contrib/backups.py:260
 #: cinder/api/contrib/volume_transfer.py:157
@@ -1109,19 +1111,19 @@ msgid "Incorrect request body format"
 msgstr "不正确的请求主体格式"
 
 #: cinder/api/contrib/backups.py:234
-#, fuzzy, python-format
+#, python-format
 msgid "Creating backup of volume %(volume_id)s in container %(container)s"
-msgstr "卷 %(volume_id)s 正在 %(mountpoint)s 上启动"
+msgstr "正在容器 %(container)s 中创建卷 %(volume_id)s 的备份"
 
 #: cinder/api/contrib/backups.py:257
 #, python-format
 msgid "Restoring backup %(backup_id)s (%(body)s)"
-msgstr ""
+msgstr "正在复原备份 %(backup_id)s (%(body)s)"
 
 #: cinder/api/contrib/backups.py:267
 #, python-format
 msgid "Restoring backup %(backup_id)s to volume %(volume_id)s"
-msgstr ""
+msgstr "正在将备份 %(backup_id)s 复原至卷 %(volume_id)s"
 
 #: cinder/api/contrib/backups.py:300
 #, python-format
@@ -1153,18 +1155,17 @@ msgid "import record output: %s."
 msgstr ""
 
 #: cinder/api/contrib/extended_snapshot_attributes.py:60
-#, fuzzy
 msgid "Snapshot not found."
-msgstr "没有找到主机"
+msgstr "找不到快照。"
 
 #: cinder/api/contrib/hosts.py:86 cinder/api/openstack/wsgi.py:237
 msgid "cannot understand XML"
 msgstr "无法理解XML"
 
 #: cinder/api/contrib/hosts.py:136
-#, fuzzy, python-format
+#, python-format
 msgid "Host '%s' could not be found."
-msgstr "主机 %(host)s 没有找到。"
+msgstr "找不到主机“%s”。"
 
 #: cinder/api/contrib/hosts.py:165
 #, python-format
@@ -1204,7 +1205,7 @@ msgstr ""
 #: cinder/api/contrib/qos_specs_manage.py:299
 #: cinder/api/contrib/qos_specs_manage.py:353
 msgid "Volume Type id must not be None."
-msgstr ""
+msgstr "卷类型不能为空。"
 
 #: cinder/api/contrib/quota_classes.py:72
 msgid "Missing required element quota_class_set in request body."
@@ -1224,7 +1225,7 @@ msgstr ""
 
 #: cinder/api/contrib/quotas.py:68
 msgid "Quota limit must be -1 or greater."
-msgstr ""
+msgstr "配额限制必须为 -1 或更大。"
 
 #: cinder/api/contrib/quotas.py:105
 msgid "Missing required element quota_set in request body."
@@ -1237,7 +1238,7 @@ msgstr ""
 
 #: cinder/api/contrib/scheduler_hints.py:36
 msgid "Malformed scheduler_hints attribute"
-msgstr ""
+msgstr "错误格式的 scheduler_hints 属性"
 
 #: cinder/api/contrib/services.py:91
 msgid ""
@@ -1270,9 +1271,8 @@ msgid "progress must be an integer percentage"
 msgstr ""
 
 #: cinder/api/contrib/types_extra_specs.py:101
-#, fuzzy
 msgid "Request body empty"
-msgstr "不正确的请求主体格式"
+msgstr "请求主体是空的"
 
 #: cinder/api/contrib/types_extra_specs.py:105
 #: cinder/api/v1/snapshot_metadata.py:75 cinder/api/v1/volume_metadata.py:75
@@ -1323,7 +1323,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_actions.py:230
 msgid "No image_name was specified in request."
-msgstr ""
+msgstr "未在请求中指定任何 image_name。"
 
 #: cinder/api/contrib/volume_actions.py:238
 msgid "Bad value for 'force' parameter."
@@ -1333,26 +1333,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
-msgstr ""
+msgstr "新卷的大小必须指定为整数。"
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1374,38 +1386,37 @@ msgid "Service not found."
 msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:131
-#, fuzzy
 msgid "Listing volume transfers"
-msgstr "更新主机状态"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:147
-#, fuzzy, python-format
+#, python-format
 msgid "Creating new volume transfer %s"
-msgstr "创建卷 %s 的快照"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:162
-#, fuzzy, python-format
+#, python-format
 msgid "Creating transfer of volume %s"
-msgstr "没有为卷 %(volume_id)s 找到目标id。"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:183
-#, fuzzy, python-format
+#, python-format
 msgid "Accepting volume transfer %s"
-msgstr "更新主机状态"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:196
-#, fuzzy, python-format
+#, python-format
 msgid "Accepting transfer %s"
-msgstr "更新主机状态"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:217
-#, fuzzy, python-format
+#, python-format
 msgid "Delete transfer with id: %s"
-msgstr "删除id为 %s 的卷"
+msgstr ""
 
 #: cinder/api/contrib/volume_type_encryption.py:64
 msgid "key_size must be non-negative"
-msgstr ""
+msgstr "key_size 不能为负数"
 
 #: cinder/api/contrib/volume_type_encryption.py:67
 msgid "key_size must be an integer"
@@ -1459,17 +1470,17 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
-msgstr ""
+msgstr "无法找到卷"
 
 #: cinder/api/contrib/volume_unmanage.py:62 cinder/api/v2/volumes.py:190
 msgid "Volume cannot be deleted while in attached state"
-msgstr ""
+msgstr "处于挂载状态的卷无法删除"
 
 #: cinder/api/middleware/auth.py:112
 msgid "Invalid service catalog json."
-msgstr ""
+msgstr "服务目录 json 无效。"
 
 #: cinder/api/middleware/fault.py:44
 #, python-format
@@ -1489,7 +1500,7 @@ msgstr ""
 #: cinder/api/middleware/sizelimit.py:55 cinder/api/middleware/sizelimit.py:64
 #: cinder/api/middleware/sizelimit.py:78
 msgid "Request is too large."
-msgstr ""
+msgstr "请求太大。"
 
 #: cinder/api/openstack/__init__.py:69
 msgid "Must specify an ExtensionManager class"
@@ -1533,9 +1544,9 @@ msgid "too many body keys"
 msgstr "过多主体密钥"
 
 #: cinder/api/openstack/wsgi.py:671
-#, fuzzy, python-format
+#, python-format
 msgid "Exception handling resource: %s"
-msgstr "扩展资源:%s"
+msgstr "处理资源时发生异常:%s"
 
 #: cinder/api/openstack/wsgi.py:676
 #, python-format
@@ -1616,9 +1627,8 @@ msgstr "这个请求受到频率限制。"
 #: cinder/api/v1/snapshot_metadata.py:156 cinder/api/v2/snapshot_metadata.py:37
 #: cinder/api/v2/snapshot_metadata.py:117
 #: cinder/api/v2/snapshot_metadata.py:156
-#, fuzzy
 msgid "snapshot does not exist"
-msgstr "实例不存在"
+msgstr "快照不存在"
 
 #: cinder/api/v1/snapshot_metadata.py:139
 #: cinder/api/v1/snapshot_metadata.py:149 cinder/api/v1/volume_metadata.py:139
@@ -1645,14 +1655,13 @@ msgstr "为卷 %s 创建快照"
 #: cinder/api/v1/snapshots.py:186 cinder/api/v2/snapshots.py:202
 #, python-format
 msgid "Invalid value '%s' for force. "
-msgstr ""
+msgstr "值“%s”对于 force 无效。"
 
 #: cinder/api/v1/volume_metadata.py:37 cinder/api/v1/volume_metadata.py:117
 #: cinder/api/v1/volume_metadata.py:156 cinder/api/v2/volume_metadata.py:36
 #: cinder/api/v2/volume_metadata.py:116 cinder/api/v2/volume_metadata.py:155
-#, fuzzy
 msgid "volume does not exist"
-msgstr "域不存在"
+msgstr "卷不存在"
 
 #: cinder/api/v1/volumes.py:114
 #, python-format
@@ -1685,9 +1694,9 @@ msgid "Create volume of %s GB"
 msgstr "创建 %s GB的卷"
 
 #: cinder/api/v1/volumes.py:504
-#, fuzzy, python-format
+#, python-format
 msgid "Removing options '%(bad_options)s' from query"
-msgstr "正在从查询语句中移除选项 '%(unk_opt_str)s'"
+msgstr "正在从查询中除去选项“%(bad_options)s”"
 
 #: cinder/api/v2/snapshots.py:111 cinder/api/v2/snapshots.py:126
 #: cinder/api/v2/snapshots.py:267
@@ -1696,64 +1705,60 @@ msgstr ""
 
 #: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:369
 msgid "Missing request body"
-msgstr ""
+msgstr "缺少请求主体"
 
 #: cinder/api/v2/types.py:70
 msgid "Volume type not found"
-msgstr ""
+msgstr "缺少卷类型"
 
 #: cinder/api/v2/volumes.py:320
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
-#, fuzzy, python-format
+#: cinder/api/v2/volumes.py:433
+#, python-format
 msgid "Removing options '%s' from query"
-msgstr "正在从查询语句中移除选项 '%(unk_opt_str)s'"
+msgstr "正在从查询中除去选项“%s”"
 
 #: cinder/backup/api.py:66
-#, fuzzy
 msgid "Backup status must be available or error"
-msgstr "卷组状态必须可获取"
+msgstr "备份状态必须为“可用”或“错误”"
 
-#: cinder/backup/api.py:115
-#, fuzzy
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
-msgstr "卷组状态必须可获取"
+msgstr "要备份的卷必须可用"
 
-#: cinder/backup/api.py:150
-#, fuzzy
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
-msgstr "状态必须可用"
+msgstr "备份状态必须为“可用”"
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
-msgstr ""
+msgstr "要复原的备份具有无效大小"
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
-msgstr ""
+msgstr "正在创建大小为 %(size)s GB 的卷,以复原备份 %(backup_id)s"
 
-#: cinder/backup/api.py:180
-#, fuzzy
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
-msgstr "卷组状态必须可获取"
+msgstr "要复原至的卷必须可用"
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
-msgstr ""
+msgstr "卷大小 %(volume_size)d 太小,无法复原大小为 %(size)d 的备份。"
 
-#: cinder/backup/api.py:191
-#, fuzzy, python-format
+#: cinder/backup/api.py:193
+#, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
-msgstr "正在把卷 %(volume_id)s 附加到 %(mountpoint)s"
+msgstr "正在通过复原备份 %(backup_id)s 来覆盖卷 %(volume_id)s"
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2035,7 +2040,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2059,7 +2064,7 @@ msgstr ""
 #: cinder/backup/drivers/ceph.py:201
 #, python-format
 msgid "invalid user '%s'"
-msgstr ""
+msgstr "用户 '%s' 无效"
 
 #: cinder/backup/drivers/ceph.py:267
 msgid "Backup id required"
@@ -2100,7 +2105,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2111,243 +2116,302 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
+msgstr "找不到映像 %s "
+
+#: cinder/backup/drivers/ceph.py:433
+#, python-format
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Deleting base image='%s'"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:457
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:463
+#, python-format
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:485
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Piping cmd1='%s' into..."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
-#, fuzzy, python-format
+#, python-format
 msgid "unsupported compression algorithm: %s"
-msgstr "不支持的分区:%s"
+msgstr "以下压缩算法不受支持:%s"
 
 #: cinder/backup/drivers/swift.py:122
 #, python-format
@@ -2357,24 +2421,24 @@ msgstr ""
 #: cinder/backup/drivers/swift.py:140
 #, python-format
 msgid "_create_container started, container: %(container)s,backup: %(backup_id)s"
-msgstr ""
+msgstr "_create_container 已启动,容器:%(container)s,备份:%(backup_id)s"
 
 #: cinder/backup/drivers/swift.py:159
 #, python-format
 msgid "_generate_swift_object_name_prefix: %s"
-msgstr ""
+msgstr "_generate_swift_object_name_prefix:%s"
 
 #: cinder/backup/drivers/swift.py:168
-#, fuzzy, python-format
+#, python-format
 msgid "generated object list: %s"
-msgstr "期望的对象类型:%s"
+msgstr "已生成对象列表:%s"
 
 #: cinder/backup/drivers/swift.py:179
 #, python-format
 msgid ""
 "_write_metadata started, container name: %(container)s, metadata "
 "filename: %(filename)s"
-msgstr ""
+msgstr "_write_metadata 已启动,容器名称:%(container)s,元数据文件名:%(filename)s"
 
 #: cinder/backup/drivers/swift.py:197
 #, python-format
@@ -2383,27 +2447,29 @@ msgid ""
 "[%(etag)s] is not the same as MD5 of metadata file sent to swift "
 "[%(md5)s]"
 msgstr ""
+"将元数据文件写入 swift 时出错,swift [%(etag)s] 中元数据文件的 MD5 与发送至 swift [%(md5)s] "
+"的元数据文件的 MD5 不同"
 
 #: cinder/backup/drivers/swift.py:202
 msgid "_write_metadata finished"
-msgstr ""
+msgstr "_write_metadata 已完成"
 
 #: cinder/backup/drivers/swift.py:207
 #, python-format
 msgid ""
 "_read_metadata started, container name: %(container)s, metadata filename:"
 " %(filename)s"
-msgstr ""
+msgstr "_read_metadata 已启动,容器名称:%(container)s,元数据文件名:%(filename)s"
 
 #: cinder/backup/drivers/swift.py:212
 #, python-format
 msgid "_read_metadata finished (%s)"
-msgstr ""
+msgstr "_read_metadata 已完成 (%s)"
 
 #: cinder/backup/drivers/swift.py:222
-#, fuzzy, python-format
+#, python-format
 msgid "volume size %d is invalid."
-msgstr "请求无效。"
+msgstr "卷大小 %d 无效。"
 
 #: cinder/backup/drivers/swift.py:236
 #, python-format
@@ -2412,51 +2478,53 @@ msgid ""
 "%(volume_size_bytes)d, swift object names prefix %(object_prefix)s, "
 "availability zone: %(availability_zone)s"
 msgstr ""
+"正在启动将卷 %(volume_id)s 备份至 swift,卷大小:%(volume_size_bytes)d,swift "
+"对象名前缀:%(object_prefix)s,可用性区域:%(availability_zone)s"
 
 #: cinder/backup/drivers/swift.py:260
 msgid "reading chunk of data from volume"
-msgstr ""
+msgstr "正在从卷读取数据区块"
 
 #: cinder/backup/drivers/swift.py:267
 #, python-format
 msgid ""
 "compressed %(data_size_bytes)d bytes of data to %(comp_size_bytes)d bytes"
 " using %(algorithm)s"
-msgstr ""
+msgstr "已使用 %(algorithm)s 将 %(data_size_bytes)d 字节数据压缩到 %(comp_size_bytes)d 字节"
 
 #: cinder/backup/drivers/swift.py:276
 msgid "not compressing data"
-msgstr ""
+msgstr "未在压缩数据"
 
 #: cinder/backup/drivers/swift.py:280
 msgid "About to put_object"
-msgstr ""
+msgstr "将执行 put_object"
 
 #: cinder/backup/drivers/swift.py:286
 #, python-format
 msgid "swift MD5 for %(object_name)s: %(etag)s"
-msgstr ""
+msgstr "swift MD5,对于 %(object_name)s:%(etag)s"
 
 #: cinder/backup/drivers/swift.py:290
 #, python-format
 msgid "backup MD5 for %(object_name)s: %(md5)s"
-msgstr ""
+msgstr "备份 MD5,对于 %(object_name)s:%(md5)s"
 
 #: cinder/backup/drivers/swift.py:293
 #, python-format
 msgid ""
 "error writing object to swift, MD5 of object in swift %(etag)s is not the"
 " same as MD5 of object sent to swift %(md5)s"
-msgstr ""
+msgstr "将对象写入 swift 时出错,swift %(etag)s 中对象的 MD5 与发送至 swift %(md5)s 的对象的 MD5 不同"
 
 #: cinder/backup/drivers/swift.py:301
 msgid "Calling eventlet.sleep(0)"
-msgstr ""
+msgstr "正在调用 eventlet.sleep(0)"
 
 #: cinder/backup/drivers/swift.py:319
 #, python-format
 msgid "backup %s finished."
-msgstr ""
+msgstr "备份 %s 已完成。"
 
 #: cinder/backup/drivers/swift.py:352
 #, python-format
@@ -2466,18 +2534,18 @@ msgstr ""
 #: cinder/backup/drivers/swift.py:362
 #, python-format
 msgid "v1 swift volume backup restore of %s started"
-msgstr ""
+msgstr "已启动 %s 的 V1 swift 卷备份复原"
 
 #: cinder/backup/drivers/swift.py:367
 #, python-format
 msgid "metadata_object_names = %s"
-msgstr ""
+msgstr "metadata_object_names=%s"
 
 #: cinder/backup/drivers/swift.py:373
 msgid ""
 "restore_backup aborted, actual swift object list in swift does not match "
 "object list stored in metadata"
-msgstr ""
+msgstr "restore_backup 已异常中止,swift 中的实际 swift 对象列表与存储在元数据中的对象列表不匹配"
 
 #: cinder/backup/drivers/swift.py:379
 #, python-format
@@ -2485,16 +2553,18 @@ msgid ""
 "restoring object from swift. backup: %(backup_id)s, container: "
 "%(container)s, swift object name: %(object_name)s, volume: %(volume_id)s"
 msgstr ""
+"正在从 swift 复原对象。备份:%(backup_id)s,容器:%(container)s,swift "
+"对象名:%(object_name)s,卷:%(volume_id)s"
 
 #: cinder/backup/drivers/swift.py:395
 #, python-format
 msgid "decompressing data using %s algorithm"
-msgstr ""
+msgstr "正在使用 %s 算法来解压缩数据"
 
 #: cinder/backup/drivers/swift.py:418
 #, python-format
 msgid "v1 swift volume backup restore of %s finished"
-msgstr ""
+msgstr "已完成 %s 的 V1 swift 卷备份复原"
 
 #: cinder/backup/drivers/swift.py:426
 #, python-format
@@ -2502,40 +2572,42 @@ msgid ""
 "starting restore of backup %(object_prefix)s from swift container: "
 "%(container)s, to volume %(volume_id)s, backup: %(backup_id)s"
 msgstr ""
+"正在启动将备份 %(object_prefix)s 从 swift 容器 %(container)s 复原至卷 "
+"%(volume_id)s,备份:%(backup_id)s"
 
 #: cinder/backup/drivers/swift.py:440
 #, python-format
 msgid "Restoring swift backup version %s"
-msgstr ""
+msgstr "正在复原 swift 备份版本 %s"
 
 #: cinder/backup/drivers/swift.py:445
 #, python-format
 msgid "No support to restore swift backup version %s"
-msgstr ""
+msgstr "不支持复原 swift 备份版本 %s"
 
 #: cinder/backup/drivers/swift.py:461
 #, python-format
 msgid "restore %(backup_id)s to %(volume_id)s finished."
-msgstr ""
+msgstr "已完成将 %(backup_id)s 复原至 %(volume_id)s。"
 
 #: cinder/backup/drivers/swift.py:475
 msgid "swift error while listing objects, continuing with delete"
-msgstr ""
+msgstr "列示对象时发生 swift 错误,正在继续进行删除"
 
 #: cinder/backup/drivers/swift.py:484
 #, python-format
 msgid "swift error while deleting object %s, continuing with delete"
-msgstr ""
+msgstr "删除对象 %s 时发生 swift 错误,正在继续进行删除"
 
 #: cinder/backup/drivers/swift.py:487
 #, python-format
 msgid "deleted swift object: %(swift_object_name)s in container: %(container)s"
-msgstr ""
+msgstr "已删除容器 %(container)s 中的 swift 对象 %(swift_object_name)s"
 
 #: cinder/backup/drivers/swift.py:497
-#, fuzzy, python-format
+#, python-format
 msgid "delete %s finished"
-msgstr "_delete: %s"
+msgstr "删除 %s 已完成"
 
 #: cinder/backup/drivers/tsm.py:78
 #, python-format
@@ -2714,32 +2786,32 @@ msgstr ""
 #: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
-msgstr ""
+msgstr "找不到卷组: %(vg_name)s"
 
 #: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
-msgstr ""
+msgstr "未能创建卷组: %(vg_name)s"
 
 #: cinder/brick/exception.py:108
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
-msgstr "没有为卷 %(volume_id)s 找到目标id。"
+msgstr "未能针对卷 %(volume_id)s 创建 iscsi 目标。"
 
 #: cinder/brick/exception.py:112
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
-msgstr "没有为卷 %(volume_id)s 找到目标id。"
+msgstr "未能针对卷 %(volume_id)s 除去 iscsi 目标。"
 
 #: cinder/brick/exception.py:116
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
-msgstr "没有为卷 %(volume_id)s 找到目标id。"
+msgstr "未能针对卷 %(volume_id)s 连接 iSCSI 目标。"
 
 #: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
-msgstr ""
+msgstr "不支持通过协议 %(protocol)s 连接到卷"
 
 #: cinder/brick/initiator/connector.py:127
 #, python-format
@@ -2756,12 +2828,12 @@ msgstr ""
 msgid ""
 "ISCSI volume not yet found at: %(host_device)s. Will rescan & retry.  Try"
 " number: %(tries)s"
-msgstr ""
+msgstr "在以下位置尚未找到 ISCSI 卷:%(host_device)s。将重新扫描并重试。尝试次数为 %(tries)s"
 
 #: cinder/brick/initiator/connector.py:242
 #, python-format
 msgid "Found iSCSI node %(host_device)s (after %(tries)s rescans)"
-msgstr ""
+msgstr "找到 iSCSI 节点 %(host_device)s(在重新扫描 %(tries)s 次之后)"
 
 #: cinder/brick/initiator/connector.py:317
 #, python-format
@@ -2770,12 +2842,12 @@ msgstr ""
 
 #: cinder/brick/initiator/connector.py:609
 msgid "We are unable to locate any Fibre Channel devices"
-msgstr ""
+msgstr "我们无法找到任何光纤通道设备"
 
 #: cinder/brick/initiator/connector.py:619
 #, python-format
 msgid "Looking for Fibre Channel dev %(device)s"
-msgstr ""
+msgstr "正在查找光纤通道设备 %(device)s"
 
 #: cinder/brick/initiator/connector.py:629
 msgid "Fibre Channel volume device not found."
@@ -2794,7 +2866,7 @@ msgstr ""
 #: cinder/brick/initiator/connector.py:658
 #, python-format
 msgid "Multipath device discovered %(device)s"
-msgstr ""
+msgstr "已发现多路径设备 %(device)s"
 
 #: cinder/brick/initiator/connector.py:776
 #, python-format
@@ -2833,7 +2905,7 @@ msgstr ""
 
 #: cinder/brick/initiator/linuxfc.py:50 cinder/brick/initiator/linuxfc.py:56
 msgid "systool is not installed"
-msgstr ""
+msgstr "未安装systool"
 
 #: cinder/brick/initiator/linuxscsi.py:99
 #: cinder/brick/initiator/linuxscsi.py:107
@@ -2845,12 +2917,12 @@ msgstr ""
 #: cinder/brick/initiator/linuxscsi.py:145
 #, python-format
 msgid "Couldn't find multipath device %(line)s"
-msgstr ""
+msgstr "找不到多路径设备 %(line)s"
 
 #: cinder/brick/initiator/linuxscsi.py:149
 #, python-format
 msgid "Found multipath device = %(mdev)s"
-msgstr ""
+msgstr "找到多路径设备 %(mdev)s"
 
 #: cinder/brick/iscsi/iscsi.py:135
 msgid "Attempting recreate of backing lun..."
@@ -2866,7 +2938,7 @@ msgstr ""
 #: cinder/brick/iscsi/iscsi.py:172
 #, python-format
 msgid "Creating iscsi_target for: %s"
-msgstr ""
+msgstr "正在为 %s 创建 iscsi 目标"
 
 #: cinder/brick/iscsi/iscsi.py:179
 #, python-format
@@ -2875,10 +2947,10 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
+#, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
-msgstr "没有为卷 %(volume_id)s 找到目标id。"
+msgstr ""
 
 #: cinder/brick/iscsi/iscsi.py:222
 #, python-format
@@ -2886,59 +2958,65 @@ msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
+"未能针对卷标识 %(vol_id)s 创建 iscsi 目标。请确保您的 tgtd 配置文件包含“include "
+"%(volumes_dir)s/*”"
 
 #: cinder/brick/iscsi/iscsi.py:252
-#, fuzzy, python-format
+#, python-format
 msgid "Removing iscsi_target for: %s"
-msgstr "正在删除基文件:%s"
+msgstr "正在针对 %s 除去 iscsi_target"
 
 #: cinder/brick/iscsi/iscsi.py:256
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
+#, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
-msgstr "尝试删除不存在的控制台%(console_id)s。"
+msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
-msgid "valid iqn needed for show_target"
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
+msgid "valid iqn needed for show_target"
+msgstr "show_target 需要有效 iqn"
+
+#: cinder/brick/iscsi/iscsi.py:398
+#, python-format
 msgid "Removing iscsi_target for volume: %s"
-msgstr "跳过remove_export。没有为卷提供iscsi_target:%d"
+msgstr "正在针对卷 %s 除去 iscsi_target"
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
-msgstr ""
+msgstr "cinder-rtstool 未正确安装"
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
-msgstr ""
+msgstr "正在针对卷 %s 创建 iscsi_target"
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:552
+#, python-format
 msgid "Removing iscsi_target: %s"
-msgstr "正在重启虚拟机 %s"
+msgstr "正在除去 iscsi_target:%s"
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
-msgstr ""
+msgstr "未能将发起方 iqn %s 添加至目标"
 
 #: cinder/brick/local_dev/lvm.py:75
 msgid "Error creating Volume Group"
@@ -2969,18 +3047,18 @@ msgid "StdErr  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:82
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to locate Volume Group %s"
-msgstr "无法找到 %s 卷"
+msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:157
 msgid "Error querying thin pool about data_percent"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:370
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find VG: %s"
-msgstr "无法为VDI %s 找到VBD"
+msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:420
 msgid ""
@@ -2995,7 +3073,7 @@ msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
-msgstr ""
+msgstr "创建卷时出错"
 
 #: cinder/brick/local_dev/lvm.py:493
 #, python-format
@@ -3004,7 +3082,7 @@ msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:507
 msgid "Error creating snapshot"
-msgstr ""
+msgstr "创建快照时出错"
 
 #: cinder/brick/local_dev/lvm.py:550
 msgid "Error activating LV"
@@ -3060,25 +3138,25 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
 #: cinder/common/sqlalchemyutils.py:66
 #: cinder/openstack/common/db/sqlalchemy/utils.py:72
 msgid "Id not in sort_keys; is sort_keys unique?"
-msgstr ""
+msgstr "标识未在 sort_keys 中,sort_keys 唯一吗?"
 
 #: cinder/common/sqlalchemyutils.py:114
 #: cinder/openstack/common/db/sqlalchemy/utils.py:120
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
-msgstr ""
+msgstr "排序方向未知,必须为“降序”或“升序”"
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3092,50 +3170,49 @@ msgstr "使用空的请求上下文是不推荐的"
 msgid "Unrecognized read_deleted value '%s'"
 msgstr "无法识别的 read_deleted 取值”%s“"
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
-msgstr ""
+msgstr "不存在任何具有标识 %s 的备份"
 
-#: cinder/db/sqlalchemy/api.py:2751
-#, fuzzy
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
-msgstr "必须可用"
+msgstr "卷必须可用"
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3148,15 +3225,15 @@ msgstr "version应该是整数"
 
 #: cinder/db/sqlalchemy/migration.py:64
 msgid "Upgrade DB using Essex release first."
-msgstr ""
+msgstr "请首先使用 Essex 发行版来升级数据库。"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/001_cinder_init.py:240
 msgid "Exception while creating table."
-msgstr ""
+msgstr "创建表时发生异常。"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/001_cinder_init.py:269
 msgid "Downgrade from initial Cinder install is unsupported."
-msgstr ""
+msgstr "从初始 Cinder 安装进行降级不受支持。"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:49
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:74
@@ -3175,47 +3252,40 @@ msgid "Dropping foreign key reservations_ibfk_1 failed."
 msgstr ""
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:133
-#, fuzzy
 msgid "quota_classes table not dropped"
-msgstr "instance_info_caches 没有删除掉"
+msgstr "未删除 quota_classes 表"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:140
-#, fuzzy
 msgid "quota_usages table not dropped"
-msgstr "instance_info_caches 没有删除掉"
+msgstr "未删除 quota_usages 表"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:147
-#, fuzzy
 msgid "reservations table not dropped"
-msgstr "dns_domains 表没有删除"
+msgstr "未删除预留表"
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
-msgstr ""
+msgstr "创建表“volume_glance_metedata”时发生异常"
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
-#, fuzzy
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
-msgstr "instance_info_caches 没有删除掉"
+msgstr "未删除 volume_glance_metadata 表"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/008_add_backup.py:68
-#, fuzzy
 msgid "backups table not dropped"
-msgstr "dns_domains 表没有删除"
+msgstr "未删除备份表"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/009_add_snapshot_metadata_table.py:58
-#, fuzzy
 msgid "snapshot_metadata table not dropped"
-msgstr "instance_info_caches 没有删除掉"
+msgstr "未删除 snapshot_metadata 表"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/010_add_transfers_table.py:61
-#, fuzzy
 msgid "transfers table not dropped"
-msgstr "dns_domains 表没有删除"
+msgstr "未删除 transfers 表"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/015_drop_migrations_table.py:31
 msgid "migrations table not dropped"
-msgstr ""
+msgstr "未删除 migrations 表"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/015_drop_migrations_table.py:61
 #, python-format
@@ -3253,7 +3323,7 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/017_add_encryption_information.py:113
 msgid "encryption table not dropped"
-msgstr ""
+msgstr "未删除 encryption 表"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/018_add_qos_specs.py:49
 msgid "Table quality_of_service_specs not created!"
@@ -3277,7 +3347,7 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/020_add_volume_admin_metadata_table.py:59
 msgid "volume_admin_metadata table not dropped"
-msgstr ""
+msgstr "未删除 volume_admin_metadata 表"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/021_add_default_quota_class.py:48
 msgid ""
@@ -3305,7 +3375,7 @@ msgstr "'qemu-img info'解析失败"
 #: cinder/image/image_utils.py:101
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
-msgstr ""
+msgstr "fmt=%(fmt)s 由 %(backing_file)s 支持"
 
 #: cinder/image/image_utils.py:109 cinder/image/image_utils.py:192
 #, python-format
@@ -3333,9 +3403,9 @@ msgid "Copying image from %(tmp)s to volume %(dest)s - size: %(size)s"
 msgstr ""
 
 #: cinder/image/image_utils.py:206
-#, fuzzy, python-format
+#, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
-msgstr "fmt=%(fmt)s 由 %(backing_file)s 支持"
+msgstr "fmt=%(fmt)s 受以下项支持:%(backing_file)s"
 
 #: cinder/image/image_utils.py:224
 #, python-format
@@ -3343,9 +3413,9 @@ msgid "Converted to %(vol_format)s, but format is now %(file_format)s"
 msgstr ""
 
 #: cinder/image/image_utils.py:260
-#, fuzzy, python-format
+#, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
-msgstr "转化为裸格式,但目前格式是 %s"
+msgstr "已转换为 %(f1)s,但现在格式为 %(f2)s"
 
 #: cinder/keymgr/conf_key_mgr.py:78
 msgid ""
@@ -3368,29 +3438,29 @@ msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
 #: cinder/openstack/common/excutils.py:62
-#, fuzzy, python-format
+#, python-format
 msgid "Original exception being dropped: %s"
-msgstr "正在丢弃原来的异常。"
+msgstr "正在删除原始异常:%s"
 
 #: cinder/openstack/common/excutils.py:91
 #, python-format
 msgid "Unexpected exception occurred %d time(s)... retrying."
-msgstr ""
+msgstr "意外的异常已发生 %d 次...正在重试。"
 
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
-msgstr ""
+msgstr "正在重新装入所缓存文件 %s"
 
 #: cinder/openstack/common/gettextutils.py:271
 msgid "Message objects do not support addition."
-msgstr ""
+msgstr "消息对象不支持附加。"
 
 #: cinder/openstack/common/gettextutils.py:280
 msgid ""
 "Message objects do not support str() because they may contain non-ascii "
 "characters. Please use unicode() or translate() instead."
-msgstr ""
+msgstr "消息对象不支持str(),因为其中可能包含非ASCII字符。请使用unicode()或translate()代替。"
 
 #: cinder/openstack/common/imageutils.py:75
 #, python-format
@@ -3399,88 +3469,86 @@ msgstr ""
 
 #: cinder/openstack/common/imageutils.py:104
 msgid "Snapshot list encountered but no header found!"
-msgstr ""
+msgstr "遇到快照列表,但是找不到任何标题!"
 
 #: cinder/openstack/common/lockutils.py:102
 #, python-format
 msgid "Could not release the acquired lock `%s`"
-msgstr ""
+msgstr "未能释放所获取锁定“%s”"
 
 #: cinder/openstack/common/lockutils.py:189
-#, fuzzy, python-format
+#, python-format
 msgid "Got semaphore \"%(lock)s\" for method \"%(method)s\"..."
-msgstr "获得信号量 \"%(lock)s\" 为方法 \"%(method)s\" ...锁"
+msgstr "已为方法“%(method)s”获取信标“%(lock)s”..."
 
 #: cinder/openstack/common/lockutils.py:200
-#, fuzzy, python-format
+#, python-format
 msgid "Attempting to grab file lock \"%(lock)s\" for method \"%(method)s\"..."
-msgstr "正在 试图获取锁 \"%(lock)s\" 为方法 \"%(method)s\"...锁"
+msgstr "正在尝试为方法“%(method)s”抓取文件锁定“%(lock)s”..."
 
 #: cinder/openstack/common/lockutils.py:227
-#, fuzzy, python-format
+#, python-format
 msgid "Got file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
-msgstr "获得文件锁 \"%(lock)s\" 为方法 \"%(method)s\"...锁"
+msgstr "已为方法“%(method)s”获取 %(path)s 处的文件锁定“%(lock)s”..."
 
 #: cinder/openstack/common/lockutils.py:235
-#, fuzzy, python-format
+#, python-format
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
-msgstr "获得文件锁 \"%(lock)s\" 为方法 \"%(method)s\"...锁"
+msgstr "已为方法“%(method)s”释放 %(path)s 处的文件锁定“%(lock)s”..."
 
-#: cinder/openstack/common/log.py:326
-#, fuzzy, python-format
+#: cinder/openstack/common/log.py:327
+#, python-format
 msgid "Deprecated: %s"
-msgstr "_delete: %s"
+msgstr "建议不要使用:%s"
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
-msgstr ""
+msgstr "加载登陆配置出错 %(log_config)s:%(err_msg)s"
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr "syslog设备必须作为一个 %s 。"
 
-#: cinder/openstack/common/log.py:709
-#, fuzzy, python-format
+#: cinder/openstack/common/log.py:710
+#, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
-msgstr "类 %(fullname)s 是不推荐的:%(msg)s"
+msgstr "对建议不要使用的配置进行了后果极严重的调用:%(msg)s"
 
 #: cinder/openstack/common/loopingcall.py:82
 #, python-format
 msgid "task run outlasted interval by %s sec"
-msgstr ""
+msgstr "任务的运行时间超过时间间隔(超过 %s 秒)"
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
-#, fuzzy
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
-msgstr "循环调用中。"
+msgstr "在固定时段内循环调用"
 
 #: cinder/openstack/common/loopingcall.py:129
 #, python-format
 msgid "Dynamic looping call sleeping for %.02f seconds"
-msgstr ""
+msgstr "动态循环调用%.02f 秒休眠"
 
 #: cinder/openstack/common/loopingcall.py:136
-#, fuzzy
 msgid "in dynamic looping call"
-msgstr "循环调用中。"
+msgstr "在动态循环调用中"
 
 #: cinder/openstack/common/periodic_task.py:43
 #, python-format
 msgid "Unexpected argument for periodic task creation: %(arg)s."
-msgstr ""
+msgstr "对于周期性任务创建,以下是意外自变量:%(arg)s。"
 
 #: cinder/openstack/common/periodic_task.py:134
 #, python-format
 msgid "Skipping periodic task %(task)s because its interval is negative"
-msgstr ""
+msgstr "正在跳过周期性任务 %(task)s,因为其时间间隔为负"
 
 #: cinder/openstack/common/periodic_task.py:139
 #, python-format
 msgid "Skipping periodic task %(task)s because it is disabled"
-msgstr ""
+msgstr "正在跳过周期性任务 %(task)s,因为它已禁用"
 
 #: cinder/openstack/common/periodic_task.py:177
 #, python-format
@@ -3497,22 +3565,22 @@ msgstr "在 %(full_task_name)s 期间发生的错误:%(e)s"
 msgid ""
 "Inheritance-based rules are deprecated; use the default brain instead of "
 "%s."
-msgstr ""
+msgstr "建议不要使用基于继承的规则;请使用缺省智能系统而不是 %s。"
 
 #: cinder/openstack/common/policy.py:163
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to understand rule %(match)r"
-msgstr "注入文件失败:%(resp)r"
+msgstr "未能理解规则 %(match)r"
 
 #: cinder/openstack/common/policy.py:173
 #, python-format
 msgid "Inheritance-based rules are deprecated; update _check_%s"
-msgstr ""
+msgstr "建议不要使用基于继承的规则;update _check_%s"
 
 #: cinder/openstack/common/policy.py:180
 #, python-format
 msgid "No handler for matches of kind %s"
-msgstr ""
+msgstr "对于类型为 %s 的匹配项,不存在任何处理程序"
 
 #: cinder/openstack/common/processutils.py:127
 #, python-format
@@ -3568,71 +3636,70 @@ msgstr ""
 
 #: cinder/openstack/common/service.py:175
 #: cinder/openstack/common/service.py:269
-#, fuzzy, python-format
+#, python-format
 msgid "Caught %s, exiting"
-msgstr "快照 %s:正在删除"
+msgstr "捕获到 %s,正在退出"
 
 #: cinder/openstack/common/service.py:187
 msgid "Exception during rpc cleanup."
-msgstr ""
+msgstr "在RPC清除期间发生异常。"
 
 #: cinder/openstack/common/service.py:238
 msgid "Parent process has died unexpectedly, exiting"
-msgstr ""
+msgstr "父进程已意外终止,正在退出"
 
 #: cinder/openstack/common/service.py:275
-#, fuzzy
 msgid "Unhandled exception"
-msgstr "内层异常:%s"
+msgstr "存在未处理的异常"
 
 #: cinder/openstack/common/service.py:308
 msgid "Forking too fast, sleeping"
-msgstr ""
+msgstr "派生速度太快,正在休眠"
 
 #: cinder/openstack/common/service.py:327
 #, python-format
 msgid "Started child %d"
-msgstr ""
+msgstr "已启动子代 %d"
 
 #: cinder/openstack/common/service.py:337
-#, fuzzy, python-format
+#, python-format
 msgid "Starting %d workers"
-msgstr "起始地址"
+msgstr "正在启动 %d 工作程序"
 
 #: cinder/openstack/common/service.py:354
 #, python-format
 msgid "Child %(pid)d killed by signal %(sig)d"
-msgstr ""
+msgstr "信号 %(sig)d 已终止子代 %(pid)d"
 
 #: cinder/openstack/common/service.py:358
 #, python-format
 msgid "Child %(pid)s exited with status %(code)d"
-msgstr ""
+msgstr "子代 %(pid)s 已退出,状态为 %(code)d"
 
 #: cinder/openstack/common/service.py:362
 #, python-format
 msgid "pid %d not in child list"
-msgstr ""
+msgstr "pid %d 没有在子代列表中"
 
 #: cinder/openstack/common/service.py:392
 #, python-format
 msgid "Caught %s, stopping children"
-msgstr ""
+msgstr "捕获到 %s,正在停止子代"
 
 #: cinder/openstack/common/service.py:410
 #, python-format
 msgid "Waiting on %d children to exit"
-msgstr ""
+msgstr "正在等待 %d 个子代退出"
 
 #: cinder/openstack/common/sslutils.py:98
 #, python-format
 msgid "Invalid SSL version : %s"
-msgstr ""
+msgstr "SSL版本无效:%s"
 
 #: cinder/openstack/common/strutils.py:92
 #, python-format
 msgid "Unrecognized value '%(val)s', acceptable values are: %(acceptable)s"
-msgstr ""
+msgstr "不可识别的值 '%(val)s', 可接受的值是: %(acceptable)s"
 
 #: cinder/openstack/common/strutils.py:202
 #, python-format
@@ -3642,7 +3709,7 @@ msgstr ""
 #: cinder/openstack/common/strutils.py:211
 #, python-format
 msgid "Invalid string format: %s"
-msgstr ""
+msgstr "字符串格式无效: %s"
 
 #: cinder/openstack/common/versionutils.py:69
 #, python-format
@@ -3660,21 +3727,21 @@ msgstr ""
 
 #: cinder/openstack/common/crypto/utils.py:29
 msgid "An unknown error occurred in crypto utils."
-msgstr ""
+msgstr "在加密工具中出现未知错误。"
 
 #: cinder/openstack/common/crypto/utils.py:36
 #, python-format
 msgid "Block size of %(given)d is too big, max = %(maximum)d"
-msgstr ""
+msgstr "块尺寸 %(given)d 过大, 最大值 = %(maximum)d"
 
 #: cinder/openstack/common/crypto/utils.py:45
 #, python-format
 msgid "Length of %(given)d is too long, max = %(maximum)d"
-msgstr ""
+msgstr "长度 %(given)d 过长, 最大值 = %(maximum)d"
 
 #: cinder/openstack/common/db/exception.py:44
 msgid "Invalid Parameter: Unicode is not supported by the current database."
-msgstr ""
+msgstr "参数无效:当前数据库不支持 Unicode。"
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:487
 msgid "DB exception wrapped."
@@ -3683,16 +3750,16 @@ msgstr "数据库异常被包裹。"
 #: cinder/openstack/common/db/sqlalchemy/session.py:538
 #, python-format
 msgid "Got mysql server has gone away: %s"
-msgstr ""
+msgstr "mysql 服务器已不存在:%s"
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:610
-#, fuzzy, python-format
+#, python-format
 msgid "SQL connection failed. %s attempts left."
-msgstr "SQL连接失败 (%(connstring)s)。还剩 %(attempts)d 次。"
+msgstr "SQL 连接失败。还可进行 %s 次尝试。"
 
 #: cinder/openstack/common/db/sqlalchemy/utils.py:33
 msgid "Sort key supplied was not valid."
-msgstr ""
+msgstr "提供的排序键无效。"
 
 #: cinder/openstack/common/scheduler/filters/capabilities_filter.py:54
 #, python-format
@@ -3711,7 +3778,7 @@ msgstr ""
 #: cinder/openstack/common/scheduler/filters/ignore_attempted_hosts_filter.py:52
 #, python-format
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
-msgstr ""
+msgstr "主机 %(host)s %(pass_msg)s。先前已试用主机:%(hosts)s"
 
 #: cinder/scheduler/driver.py:69
 msgid "Must implement host_passes_filters"
@@ -3726,9 +3793,8 @@ msgid "Must implement a fallback schedule"
 msgstr "必须实现一个回滚 schedule"
 
 #: cinder/scheduler/driver.py:82
-#, fuzzy
 msgid "Must implement schedule_create_volume"
-msgstr "必须实现一个回滚 schedule"
+msgstr "必须实现 schedule_create_volume"
 
 #: cinder/scheduler/filter_scheduler.py:98
 #, python-format
@@ -3749,19 +3815,19 @@ msgstr ""
 
 #: cinder/scheduler/filter_scheduler.py:156
 msgid "Invalid value for 'scheduler_max_attempts', must be >=1"
-msgstr ""
+msgstr "值对于“scheduler_max_attempts”无效,必须 >= 1"
 
 #: cinder/scheduler/filter_scheduler.py:174
 #, python-format
 msgid ""
 "Error scheduling %(volume_id)s from last vol-service: %(last_host)s : "
 "%(exc)s"
-msgstr ""
+msgstr "从最后一个卷服务 %(last_host)s 调度 %(volume_id)s 时出错:%(exc)s"
 
 #: cinder/scheduler/filter_scheduler.py:207
 #, python-format
 msgid "Exceeded max scheduling attempts %(max_attempts)d for volume %(volume_id)s"
-msgstr ""
+msgstr "对于卷 %(volume_id)s,已超过最大调度尝试次数 %(max_attempts)d"
 
 #: cinder/scheduler/filter_scheduler.py:259
 #, python-format
@@ -3774,21 +3840,21 @@ msgid "Choosing %s"
 msgstr ""
 
 #: cinder/scheduler/host_manager.py:266
-#, fuzzy, python-format
+#, python-format
 msgid "Ignoring %(service_name)s service update from %(host)s"
-msgstr "接收到 %(service_name)s 服务更新,来自 %(host)s。"
+msgstr "正在忽略 %(host)s 中的 %(service_name)s 服务更新"
 
 #: cinder/scheduler/host_manager.py:271
 #, python-format
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr "接收到 %(service_name)s 服务更新,来自 %(host)s。"
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3830,16 +3896,15 @@ msgid "Could not decode scheduler options: '%s'"
 msgstr ""
 
 #: cinder/scheduler/filters/capacity_filter.py:43
-#, fuzzy
 msgid "Free capacity not set: volume node info collection broken."
-msgstr "未设置 VCPUs;假设 CPU 集合损坏了"
+msgstr "未设置可用容量:已中断卷节点信息收集。"
 
 #: cinder/scheduler/filters/capacity_filter.py:57
 #, python-format
 msgid ""
 "Insufficient free space for volume creation (requested / avail): "
 "%(requested)s/%(available)s"
-msgstr ""
+msgstr "可用空间不足,无法用于卷创建(请求的/可用的):%(requested)s/%(available)s"
 
 #: cinder/scheduler/flows/create_volume.py:53
 msgid "No volume_id provided to populate a request_spec from"
@@ -3860,7 +3925,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr "FAKE ISCSI: %s"
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3894,7 +3959,7 @@ msgstr "伪命令引起异常 %s"
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr "伪命令的标准输出stdout='%(stdout)s' 标准错误输出 stderr='%(stderr)s'"
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3928,35 +3993,41 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
 #: cinder/tests/test_storwize_svc.py:252
-#, fuzzy, python-format
+#, python-format
 msgid "unrecognized argument %s"
-msgstr "无法识别的 read_deleted 取值”%s“"
+msgstr "无法识别自变量 %s"
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
-msgstr ""
+msgstr "请运行 CLI 命令:%s"
 
-#: cinder/tests/test_storwize_svc.py:1508
-#, fuzzy, python-format
+#: cinder/tests/test_storwize_svc.py:1445
+#, python-format
 msgid ""
 "CLI output:\n"
 " stdout: %(stdout)s\n"
 " stderr: %(stderr)s"
-msgstr "伪命令的标准输出stdout='%(stdout)s' 标准错误输出 stderr='%(stderr)s'"
+msgstr ""
+"CLI 输出:\n"
+"标准输出:%(stdout)s\n"
+"标准错误:%(stderr)s"
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
 " stdout: %(out)s\n"
 " stderr: %(err)s"
 msgstr ""
+"CLI 异常输出:\n"
+"标准输出:%(out)s\n"
+"标准错误:%(err)s"
 
 #: cinder/tests/test_volume_types.py:60
 #, python-format
@@ -3968,10 +4039,9 @@ msgstr "给定数据:%s"
 msgid "Result data: %s"
 msgstr "结果数据:%s"
 
-#: cinder/tests/api/contrib/test_backups.py:737
-#, fuzzy
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
-msgstr "无效的快照"
+msgstr "输入无效"
 
 #: cinder/tests/brick/test_brick_remotefs.py:99
 msgid "Unexpected call to _execute."
@@ -3982,9 +4052,9 @@ msgid "mount failed."
 msgstr ""
 
 #: cinder/tests/integrated/test_login.py:29
-#, fuzzy, python-format
+#, python-format
 msgid "volume: %s"
-msgstr "分离卷 %s"
+msgstr "卷:%s"
 
 #: cinder/tests/integrated/api/client.py:34
 #, python-format
@@ -4069,18 +4139,17 @@ msgid "Inside get_active_zone_set %s"
 msgstr ""
 
 #: cinder/transfer/api.py:68
-#, fuzzy
 msgid "Volume in unexpected state"
-msgstr "意外的状态码"
+msgstr ""
 
 #: cinder/transfer/api.py:102 cinder/volume/api.py:350
 msgid "status must be available"
 msgstr "状态必须可用"
 
 #: cinder/transfer/api.py:119
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to create transfer record for %s"
-msgstr "为ip: %s获取元数据失败"
+msgstr ""
 
 #: cinder/transfer/api.py:136
 #, python-format
@@ -4088,16 +4157,18 @@ msgid "Attempt to transfer %s with invalid auth key."
 msgstr ""
 
 #: cinder/transfer/api.py:156 cinder/volume/flows/api/create_volume.py:508
-#, fuzzy, python-format
+#, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG volume "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr "%(pid)s 的配额超出,尝试创建 %(size)sG 的卷"
+msgstr ""
+"对于 %(s_pid)s,已超过配额,已尝试创建 %(s_size)sG 卷(已使用 %(d_consumed)dG,配额为 "
+"%(d_quota)dG)"
 
 #: cinder/transfer/api.py:182
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to update quota donating volumetransfer id %s"
-msgstr "更新代理失败:%(resp)r"
+msgstr ""
 
 #: cinder/transfer/api.py:199
 #, python-format
@@ -4127,7 +4198,7 @@ msgstr ""
 
 #: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
-msgstr ""
+msgstr "未能针对删除卷更新配额"
 
 #: cinder/volume/api.py:228
 #, python-format
@@ -4141,7 +4212,7 @@ msgstr ""
 #: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
-msgstr ""
+msgstr "卷仍然具有 %d 个从属快照"
 
 #: cinder/volume/api.py:293 cinder/volume/api.py:333
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
@@ -4158,9 +4229,8 @@ msgid "status must be in-use to detach"
 msgstr ""
 
 #: cinder/volume/api.py:371
-#, fuzzy
 msgid "Volume status must be available to reserve"
-msgstr "卷组状态必须可获取"
+msgstr "卷状态必须为“可用”,才能进行保留"
 
 #: cinder/volume/api.py:447
 msgid "Snapshot cannot be created while volume is migrating"
@@ -4171,47 +4241,44 @@ msgid "must be available"
 msgstr "必须可用"
 
 #: cinder/volume/api.py:473
-#, fuzzy, python-format
+#, 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 的卷"
+msgstr ""
+"对于 %(s_pid)s,已超过配额,已尝试创建 %(s_size)sG 快照(已使用 %(d_consumed)dG,配额为 "
+"%(d_quota)dG)"
 
 #: cinder/volume/api.py:485
-#, fuzzy, python-format
+#, 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 个实例"
+msgstr "对于 %(s_pid)s,已超过配额,已尝试创建快照(已使用 %(d_consumed)d 快照)"
 
 #: cinder/volume/api.py:536
-#, fuzzy
 msgid "Volume Snapshot status must be available or error"
-msgstr "卷组状态必须可获取"
+msgstr "卷快照状态必须为“可用”或“错误”"
 
 #: cinder/volume/api.py:564 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
-msgstr ""
+msgstr "元数据属性关键字为空白"
 
 #: cinder/volume/api.py:568
-#, fuzzy
 msgid "Metadata property key greater than 255 characters"
-msgstr "安全组 %s 不能比255个字符更长。"
+msgstr "元数据属性关键字超过 255 个字符"
 
 #: cinder/volume/api.py:572
-#, fuzzy
 msgid "Metadata property value greater than 255 characters"
-msgstr "安全组 %s 不能比255个字符更长。"
+msgstr "元数据属性值超过 255 个字符"
 
 #: cinder/volume/api.py:703 cinder/volume/api.py:777
-#, fuzzy
 msgid "Volume status must be available/in-use."
-msgstr "卷组状态必须可获取"
+msgstr "卷状态必须为“可用”/“使用中”。"
 
 #: cinder/volume/api.py:706
-#, fuzzy
 msgid "Volume status is in-use."
-msgstr "卷 %s:卷繁忙"
+msgstr "卷状态为“使用中”。"
 
 #: cinder/volume/api.py:735
 msgid "Volume status must be available to extend."
@@ -4239,66 +4306,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4325,27 +4392,27 @@ msgstr ""
 #: cinder/volume/driver.py:335
 #, python-format
 msgid "copy_image_to_volume %s."
-msgstr ""
+msgstr "copy_image_to_volume %s。"
 
 #: cinder/volume/driver.py:352
 #, python-format
 msgid "copy_volume_to_image %s."
-msgstr ""
+msgstr "copy_volume_to_image %s。"
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4360,18 +4427,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr "卷%s:正在移除导出"
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4394,7 +4461,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr "采用discovery,ISCSI provider_location 没有存储"
 
@@ -4409,12 +4476,12 @@ msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
 #: cinder/volume/driver.py:701
-#, fuzzy, python-format
+#, python-format
 msgid "Could not find iSCSI export for volume %s"
-msgstr "无法为卷 %s 找到 iSCSI 导出"
+msgstr "对于卷 %s,找不到 iSCSI 导出"
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr "ISCSI Discovery:找到 %s"
@@ -4423,51 +4490,58 @@ msgstr "ISCSI Discovery:找到 %s"
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
 #: cinder/volume/drivers/windows/windows.py:205
 msgid "Updating volume stats"
-msgstr ""
+msgstr "正在更新卷状态"
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
+msgstr "驱动程序必须实现 initialize_connection"
+
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
 msgstr ""
 
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
-#, fuzzy, python-format
+#, python-format
 msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr "跳过remove_export。没有为卷提供iscsi_target:%d"
+msgstr "正在跳过 remove_export。对于卷 %s,未供应任何 iscsi_target"
 
 #: cinder/volume/iscsi.py:80
-#, fuzzy, python-format
+#, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
-msgstr "跳过remove_export。没有为卷导出iscsi_target:%d"
+msgstr "正在跳过 remove_export。对于卷 %s,目前未导出任何 iscsi_target"
 
 #: cinder/volume/iscsi.py:100
 msgid "Detected inconsistency in provider_location id"
-msgstr ""
+msgstr "已检测到 provider_location 标识不一致"
 
 #: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:572
 #: cinder/volume/drivers/huawei/rest_common.py:1225
 #, python-format
 msgid "%s"
-msgstr ""
+msgstr "%s"
 
 #: cinder/volume/iscsi.py:184
-#, fuzzy, python-format
+#, python-format
 msgid "Symbolic link %s not found"
-msgstr "没有找到标记 [%s]"
+msgstr "找不到符号链接 %s"
 
 #: cinder/volume/iscsi.py:251
 #, python-format
@@ -4475,292 +4549,283 @@ msgid "volume_info:%s"
 msgstr ""
 
 #: cinder/volume/iscsi.py:252
-#, fuzzy, python-format
+#, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr "跳过ensure_export。没有为卷提供iscsi_target:%d"
+msgstr "正在跳过 ensure_export。对于卷 %s,未供应任何 iscsi_target"
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
-msgstr ""
+msgstr "建议不要使用驱动程序路径 %s,请将您的配置更新为新路径。"
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr "重新导出卷%s"
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr "卷 %s:跳过导出"
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
-msgstr ""
+msgstr "正在恢复任何正在进行的删除操作"
 
-#: cinder/volume/manager.py:296
-#, fuzzy, python-format
+#: cinder/volume/manager.py:268
+#, python-format
 msgid "Resuming delete on volume: %s"
-msgstr "正在删除volumeID:%s "
+msgstr "正在恢复对卷 %s 的删除"
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr "卷%s:删除中"
 
-#: cinder/volume/manager.py:390
-#, fuzzy
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
-msgstr "卷不属于这个节点"
+msgstr "卷不是此节点的本地卷"
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
-#, fuzzy
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
-msgstr "更新代理失败:%(resp)r"
+msgstr "未能针对删除卷更新使用量"
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr "卷%s:删除成功"
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr "快照 %s:正在创建"
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr "快照 %s:创建成功"
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr "快照 %s:正在删除"
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
-msgstr ""
+msgstr "未能针对删除快照更新使用量"
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr "快照 %s:删除成功"
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
-msgstr ""
+msgstr "正在由另一实例连接"
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
-#, fuzzy, python-format
+#: cinder/volume/manager.py:686
+#, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
-msgstr "把卷 %(volume_id)s 附加到实例 %(instance_id)s 上位置在 %(device)s"
+msgstr "已将卷 %(volume_id)s 成功上载至映像 %(image_id)s"
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
-#, fuzzy
 msgid "Updating volume status"
-msgstr "更新主机状态"
+msgstr "正在更新卷状态"
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr "收到通知 {%s}"
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4815,30 +4880,30 @@ msgstr ""
 msgid "name cannot be None"
 msgstr "name不能是None"
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
-msgstr ""
+msgstr "正在执行对卷 %s 的安全删除"
 
 #: cinder/volume/volume_types.py:130
 #, python-format
 msgid ""
 "Default volume type is not found, please check default_volume_type "
 "config: %s"
-msgstr ""
+msgstr "找不到缺省卷类型。请检查 default_volume_type 配置:%s"
 
 #: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:284
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
-#, fuzzy, python-format
+#, python-format
 msgid "Creating clone of volume: %s"
-msgstr "创建卷 %s 的快照"
+msgstr "正在创建卷 %s 的克隆"
 
 #: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
@@ -4946,13 +5011,13 @@ msgstr ""
 #: cinder/volume/drivers/eqlx.py:208
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
-msgstr ""
+msgstr "SSH 命令在“%(total_attempts)r”之后失败,尝试次数:“%(command)s”"
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
-#, fuzzy, python-format
+#, python-format
 msgid "Error running SSH command: %s"
-msgstr "握手出错:%s"
+msgstr "运行 SSH 命令时出错:%s"
 
 #: cinder/volume/drivers/eqlx.py:282
 #, python-format
@@ -5028,219 +5093,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
-msgstr ""
+msgstr "未配置 Gluster 配置文件 (%s)"
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
-msgstr ""
+msgstr "%(config)s 处不存在 Gluster 配置文件"
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
-msgstr ""
+msgstr "未安装 mount.glusterfs"
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
-#, fuzzy, python-format
+#, python-format
 msgid "casted to %s"
-msgstr "嵌套(调用)返回 %s"
+msgstr "传播至 %s"
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
-msgstr ""
+msgstr "卷 %s 未指定 provider_location,正在跳过"
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
-msgstr ""
+msgstr "卷标识:%s"
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
-msgstr ""
+msgstr "正在创建新的卷在 %s"
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
-msgstr ""
+msgstr "文件已存在在 %s"
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
-#, fuzzy, python-format
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
+#, python-format
 msgid "Exception during mounting %s"
-msgstr "加载扩展发生异常:%s"
+msgstr "安装 %s 期间发生异常"
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5262,7 +5327,7 @@ msgstr ""
 #: cinder/volume/drivers/lvm.py:246
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
-msgstr ""
+msgstr "找不到快照 %s,正在跳过删除操作"
 
 #: cinder/volume/drivers/lvm.py:347
 #, python-format
@@ -5305,19 +5370,19 @@ msgid " but size is now %d"
 msgstr ""
 
 #: cinder/volume/drivers/nfs.py:380
-#, fuzzy, python-format
+#, python-format
 msgid "%s is already mounted"
-msgstr "镜像已经挂载"
+msgstr "已安装 %s"
 
 #: cinder/volume/drivers/nfs.py:432
 #, python-format
 msgid "There's no NFS config file configured (%s)"
-msgstr ""
+msgstr "未配置 NFS 配置文件 (%s)"
 
 #: cinder/volume/drivers/nfs.py:437
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
-msgstr ""
+msgstr " %(config)s 处不存在 NFS 配置文件"
 
 #: cinder/volume/drivers/nfs.py:442
 #, python-format
@@ -5349,176 +5414,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:212
+#, python-format
 msgid "error opening rbd image %s"
-msgstr "启动xvp发生错误:%s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
-#, fuzzy
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
-msgstr "正在连接 libvirt:%s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
-msgstr ""
+msgstr "刷新卷统计时出错"
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:703
+#, python-format
 msgid "connection data: %s"
-msgstr "给定数据:%s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
-msgstr ""
+msgstr "未存储在 rbd 中"
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
-msgstr ""
+msgstr "空组件"
 
-#: cinder/volume/drivers/rbd.py:718
-#, fuzzy
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
-msgstr "无效的快照"
+msgstr "不是 rbd 快照"
 
-#: cinder/volume/drivers/rbd.py:730
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:731
+#, python-format
 msgid "not cloneable: %s"
-msgstr "Ext name: %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
-msgstr ""
+msgstr "%s 位于不同的 ceph 集群中"
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:754
+#, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
-msgstr "无法找到 %s 卷"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5526,25 +5589,25 @@ msgstr ""
 
 #: cinder/volume/drivers/scality.py:67
 msgid "Value required for 'scality_sofs_config'"
-msgstr ""
+msgstr "“scality_sofs_config”的必需值"
 
 #: cinder/volume/drivers/scality.py:78
 #, python-format
 msgid "Cannot access 'scality_sofs_config': %s"
-msgstr ""
+msgstr "无法访问“scality_sofs_config”:%s"
 
 #: cinder/volume/drivers/scality.py:84
 msgid "Cannot execute /sbin/mount.sofs"
-msgstr ""
+msgstr "无法执行 /sbin/mount.sofs"
 
 #: cinder/volume/drivers/scality.py:105
 msgid "Cannot mount Scality SOFS, check syslog for errors"
-msgstr ""
+msgstr "无法安装 Scality SOFS,请检查系统日志以获取错误"
 
 #: cinder/volume/drivers/scality.py:139
 #, python-format
 msgid "Cannot find volume dir for Scality SOFS at '%s'"
-msgstr ""
+msgstr "“%s”处找不到 Scality SOFS 的卷目录"
 
 #: cinder/volume/drivers/sheepdog.py:59
 #, python-format
@@ -5597,24 +5660,24 @@ msgstr "SolidFire API调用结果:%s"
 #: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
-msgstr ""
+msgstr "克隆操作遇到了:%s"
 
 #: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
-msgstr ""
+msgstr "重试快照 %s 之前等待未完成的操作"
 
 #: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
-msgstr ""
+msgstr "已检测到 xDBVersionMismatch,重试 %s 次(共 5 次)"
 
 #: cinder/volume/drivers/solidfire.py:200
 #: cinder/volume/drivers/solidfire.py:269
 #: cinder/volume/drivers/solidfire.py:364
-#, fuzzy, python-format
+#, python-format
 msgid "API response: %s"
-msgstr "响应 %s"
+msgstr "API 响应:%s"
 
 #: cinder/volume/drivers/solidfire.py:220
 #, python-format
@@ -5629,12 +5692,11 @@ msgstr "solidfire帐户:%s 不存在,正在创建..."
 #: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
-msgstr ""
+msgstr "未能检索到 get_by_account 中的卷 SolidFire-ID %s!"
 
 #: cinder/volume/drivers/solidfire.py:396
-#, fuzzy
 msgid "Failed to get model update from clone"
-msgstr "为ip: %s获取元数据失败"
+msgstr "未能从克隆获取模型更新"
 
 #: cinder/volume/drivers/solidfire.py:408
 #, python-format
@@ -5644,7 +5706,7 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
-msgstr ""
+msgstr "检测到多个有效预设置,请使用 %s"
 
 #: cinder/volume/drivers/solidfire.py:458
 #, python-format
@@ -5654,17 +5716,17 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
-msgstr ""
+msgstr "已将 SolidFire 卷标识 %(sfid)s 映射至 Cinder 标识 %(uuid)s。"
 
 #: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
-msgstr ""
+msgstr "SF 集群中找不到卷 %s。"
 
 #: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
-msgstr ""
+msgstr "找到了映射至标识 %(uuid)s 的 %(count)s 个卷。"
 
 #: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
@@ -5673,7 +5735,7 @@ msgstr "进入SolidFire delete_volume..."
 #: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
-msgstr ""
+msgstr "SolidFire 集群中找不到有关卷标识 %s 的说明"
 
 #: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
@@ -5686,11 +5748,11 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
-msgstr ""
+msgstr "SolidFire 集群中找不到卷标识 %s!"
 
 #: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
@@ -5713,33 +5775,31 @@ msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:663
-#, fuzzy
 msgid "Updating cluster status info"
-msgstr "更新主机状态"
+msgstr "正在更新集群状态信息"
 
 #: cinder/volume/drivers/solidfire.py:671
-#, fuzzy
 msgid "Failed to get updated stats"
-msgstr "无法得到最新的状态:%s"
+msgstr "未能获取已更新的统计"
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
 #: cinder/volume/drivers/zadara.py:236
-#, fuzzy, python-format
+#, python-format
 msgid "Sending %(method)s to %(url)s. Body \"%(body)s\""
-msgstr "把“%(method)s”投放在 %(topic)s \"%(host)s\""
+msgstr "将 %(method)s 发送至 %(url)s。正文 \"%(body)s\""
 
 #: cinder/volume/drivers/zadara.py:260
-#, fuzzy, python-format
+#, python-format
 msgid "Operation completed. %(data)s"
-msgstr "确认完成"
+msgstr "操作已完成。%(data)s"
 
 #: cinder/volume/drivers/zadara.py:357
 #, python-format
@@ -5747,9 +5807,9 @@ msgid "Pool %(name)s: %(total)sGB total, %(free)sGB free"
 msgstr ""
 
 #: cinder/volume/drivers/zadara.py:408 cinder/volume/drivers/zadara.py:531
-#, fuzzy, python-format
+#, python-format
 msgid "Volume %(name)s could not be found. It might be already deleted"
-msgstr "卷 %(volume_id)s 没有找到。"
+msgstr "找不到卷 %(name)s。可能已删除"
 
 #: cinder/volume/drivers/zadara.py:438
 #, python-format
@@ -5790,7 +5850,7 @@ msgstr ""
 #: cinder/volume/drivers/zadara.py:614
 #, python-format
 msgid "Attach properties: %(properties)s"
-msgstr ""
+msgstr "附加属性:%(properties)s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:125
 #, python-format
@@ -5798,22 +5858,22 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr "无法为卷 %s 找到 iSCSI 导出"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
-#, fuzzy, python-format
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
+#, python-format
 msgid "Cannot find device number for volume %s"
-msgstr "无法为卷 %s 找到 iSCSI 导出"
+msgstr "找不到卷 %s 的设备号"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
-#, fuzzy, python-format
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
+#, python-format
 msgid "Found iSCSI endpoint: %s"
-msgstr "引起异常 NotFound: %s"
+msgstr "找到了 iSCSI 端点:%s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:209
 #, python-format
@@ -5829,37 +5889,36 @@ msgstr ""
 msgid ""
 "Module PyWBEM not installed.  Install PyWBEM using the python-pywbem "
 "package."
-msgstr ""
+msgstr "未安装模块 PyWBEM。 使用 python-pywbem 包安装 PyWBEM。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:82
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:125
-#, fuzzy
 msgid "Entering create_volume."
-msgstr "进入SolidFire create_volume..."
+msgstr "正在进入 create_volume。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:86
-#, fuzzy, python-format
+#, python-format
 msgid "Create Volume: %(volume)s  Size: %(size)lu"
-msgstr "卷%(vol_name)s:创建大小为%(vol_size)s的逻辑卷"
+msgstr "创建卷:%(volume)s  大小:%(size)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:94
 #, python-format
 msgid "Create Volume: %(volume)s  Storage type: %(storage_type)s"
-msgstr ""
+msgstr "创建卷:%(volume)s  存储类型:%(storage_type)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:101
 #, python-format
 msgid ""
 "Create Volume: %(volume)s  Pool: %(pool)s  Storage System: "
 "%(storage_system)s"
-msgstr ""
+msgstr "创建卷:%(volume)s  池:%(pool)s  存储系统:%(storage_system)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:110
 #, python-format
 msgid ""
 "Error Create Volume: %(volumename)s. Storage Configuration Service not "
 "found for pool %(storage_type)s."
-msgstr ""
+msgstr "创建卷 %(volumename)s 时出错。找不到池 %(storage_type)s 的存储配置服务。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:120
 #, python-format
@@ -5872,14 +5931,14 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_smis_common.py:136
 #, python-format
 msgid "Create Volume: %(volumename)s  Return code: %(rc)lu"
-msgstr ""
+msgstr "创建卷:%(volumename)s  返回码:%(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:143
 #, python-format
 msgid ""
 "Error Create Volume: %(volumename)s.  Return code: %(rc)lu.  Error: "
 "%(error)s"
-msgstr ""
+msgstr "创建卷 %(volumename)s 时出错。 返回码:%(rc)lu。  错误:%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:164
 #, python-format
@@ -5890,16 +5949,15 @@ msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:176
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:348
-#, fuzzy
 msgid "Entering create_volume_from_snapshot."
-msgstr "从快照 %s 创建卷"
+msgstr "正在进入 create_volume_from_snapshot。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:181
 #, python-format
 msgid ""
 "Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s"
-msgstr ""
+msgstr "根据快照创建卷:卷:%(volumename)s  快照:%(snapshotname)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:191
 #, python-format
@@ -5908,13 +5966,15 @@ msgid ""
 "%(snapshotname)s  Snapshot Instance: %(snapshotinstance)s  Storage "
 "System: %(storage_system)s."
 msgstr ""
+"根据快照创建卷:卷:%(volumename)s  快照:%(snapshotname)s  快照实例:%(snapshotinstance)s"
+"  存储系统:%(storage_system)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:201
 #, python-format
 msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s. Create Volume from Snapshot is NOT supported on VMAX."
-msgstr ""
+msgstr "根据快照创建卷时出错:卷:%(volumename)s  快照:%(snapshotname)s。VMAX 上不支持根据快照创建卷。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:212
 #, python-format
@@ -5922,7 +5982,7 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s. Cannot find Replication Service to create volume from "
 "snapshot."
-msgstr ""
+msgstr "根据快照创建卷时出错:卷:%(volumename)s  快照:%(snapshotname)s。找不到用于根据快照创建卷的复制服务。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:221
 #, python-format
@@ -5932,6 +5992,8 @@ msgid ""
 "%(service)s  ElementName: %(elementname)s  SyncType: 8  SourceElement: "
 "%(sourceelement)s"
 msgstr ""
+"根据快照创建卷:卷:%(volumename)s  快照:%(snapshotname)s  方法:CreateElementReplica  "
+"复制服务:%(service)s  元素名称:%(elementname)s  同步类型:8 源元素:%(sourceelement)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:242
 #, python-format
@@ -5939,6 +6001,8 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  "
 "Snapshot:%(snapshotname)s.  Return code: %(rc)lu.Error: %(error)s"
 msgstr ""
+"根据快照创建卷时出错:卷:%(volumename)s  快照:%(snapshotname)s.  "
+"返回码:%(rc)lu。错误:%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:268
 #, python-format
@@ -5946,7 +6010,7 @@ msgid ""
 "Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s.  Successfully clone volume from snapshot.  Finding the "
 "clone relationship."
-msgstr ""
+msgstr "根据快照创建卷:卷:%(volumename)s  快照:%(snapshotname)s。成功从快照克隆卷。正在查找克隆关系。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:280
 #, python-format
@@ -5956,13 +6020,16 @@ msgid ""
 "ModifyReplicaSynchronization ReplicationService: %(service)s  Operation: "
 "8  Synchronization: %(sync_name)s"
 msgstr ""
+"根据快照创建卷:卷:%(volumename)s  "
+"快照:%(snapshotname)s。除去克隆关系。方法:ModifyReplicaSynchronization "
+"复制服务:%(service)s  操作:8  同步:%(sync_name)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:296
 #, python-format
 msgid ""
 "Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu"
-msgstr ""
+msgstr "根据快照创建卷:卷:%(volumename)s  快照:%(snapshotname)s  返回码:%(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:305
 #, python-format
@@ -5970,6 +6037,8 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s.  Return code: %(rc)lu.  Error: %(error)s"
 msgstr ""
+"根据快照创建卷时出错:卷:%(volumename)s  快照:%(snapshotname)s。 返回码:%(rc)lu。 "
+"错误:%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:317
 #, python-format
@@ -5977,18 +6046,19 @@ msgid ""
 "Leaving create_volume_from_snapshot: Volume: %(volumename)s Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu."
 msgstr ""
+"正在离开 create_volume_from_snapshot:卷:%(volumename)s 快照:%(snapshotname)s  "
+"返回码:%(rc)lu。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:328
-#, fuzzy
 msgid "Entering create_cloned_volume."
-msgstr "进入SolidFire create_volume..."
+msgstr "正在进入 create_cloned_volume。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:333
 #, python-format
 msgid ""
 "Create a Clone from Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s"
-msgstr ""
+msgstr "根据卷创建克隆:卷:%(volumename)s  源卷:%(srcname)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:343
 #, python-format
@@ -5996,13 +6066,15 @@ msgid ""
 "Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
 "  Source Instance: %(src_instance)s  Storage System: %(storage_system)s."
 msgstr ""
+"创建克隆卷:卷:%(volumename)s  源卷:%(srcname)s  源实例:%(src_instance)s  "
+"存储系统:%(storage_system)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:353
 #, python-format
 msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s. Cannot find Replication Service to create cloned volume."
-msgstr ""
+msgstr "创建克隆卷时出错:卷:%(volumename)s  源卷:%(srcname)s。找不到用于创建克隆卷的复制服务。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:362
 #, python-format
@@ -6012,13 +6084,15 @@ msgid ""
 "ElementName: %(elementname)s  SyncType: 8  SourceElement: "
 "%(sourceelement)s"
 msgstr ""
+"创建克隆卷:卷:%(volumename)s  源卷:%(srcname)s  方法:CreateElementReplica  "
+"复制服务:%(service)s  元素名称:%(elementname)s  同步类型:8  源元素:%(sourceelement)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:383
 #, python-format
 msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source "
 "Volume:%(srcname)s.  Return code: %(rc)lu.Error: %(error)s"
-msgstr ""
+msgstr "创建克隆卷时出错:卷:%(volumename)s  源卷:%(srcname)s。  返回码:%(rc)lu。错误:%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:409
 #, python-format
@@ -6026,7 +6100,7 @@ msgid ""
 "Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s."
 "  Successfully cloned volume from source volume.  Finding the clone "
 "relationship."
-msgstr ""
+msgstr "创建克隆卷:卷:%(volumename)s  源卷:%(srcname)s。成功从源卷克隆了卷。正在查找克隆关系。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:421
 #, python-format
@@ -6036,55 +6110,57 @@ msgid ""
 "ReplicationService: %(service)s  Operation: 8  Synchronization: "
 "%(sync_name)s"
 msgstr ""
+"创建克隆卷:卷:%(volumename)s  源卷:%(srcname)s。  "
+"除去克隆关系。方法:ModifyReplicaSynchronization 复制服务:%(service)s  操作:8 "
+"同步:%(sync_name)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:437
 #, python-format
 msgid ""
 "Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
 "  Return code: %(rc)lu"
-msgstr ""
+msgstr "创建克隆卷:卷:%(volumename)s  源卷:%(srcname)s  返回码:%(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:446
 #, python-format
 msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s.  Return code: %(rc)lu.  Error: %(error)s"
-msgstr ""
+msgstr "创建克隆卷时出错:卷:%(volumename)s  源卷:%(srcname)s。 返回码:%(rc)lu。错误:%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:458
 #, python-format
 msgid ""
 "Leaving create_cloned_volume: Volume: %(volumename)s Source Volume: "
 "%(srcname)s  Return code: %(rc)lu."
-msgstr ""
+msgstr "正在离开 create_cloned_volume:卷:%(volumename)s 源卷:%(srcname)s  返回码:%(rc)lu。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:469
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:178
-#, fuzzy
 msgid "Entering delete_volume."
-msgstr "进入SolidFire delete_volume..."
+msgstr "正在进入 delete_volume。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:471
-#, fuzzy, python-format
+#, python-format
 msgid "Delete Volume: %(volume)s"
-msgstr "删除id为 %s 的卷"
+msgstr "删除卷:%(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:478
 #, python-format
 msgid "Volume %(name)s not found on the array. No volume to delete."
-msgstr ""
+msgstr "数组中找不到卷 %(name)s。没有要删除的卷。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:488
 #, python-format
 msgid ""
 "Error Delete Volume: %(volumename)s. Storage Configuration Service not "
 "found."
-msgstr ""
+msgstr "删除卷 %(volumename)s 时出错。找不到存储配置服务。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:496
 #, python-format
 msgid "Delete Volume: %(name)s  DeviceID: %(deviceid)s"
-msgstr ""
+msgstr "删除卷:%(name)s  设备标识:%(deviceid)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:500
 #, python-format
@@ -6092,42 +6168,44 @@ msgid ""
 "Delete Volume: %(name)s  Method: EMCReturnToStoragePool ConfigServic: "
 "%(service)s  TheElement: %(vol_instance)s"
 msgstr ""
+"删除卷:%(name)s  方法:EMCReturnToStoragePool 配置服务:%(service)s  "
+"元素:%(vol_instance)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:514
 #, python-format
 msgid ""
 "Error Delete Volume: %(volumename)s.  Return code: %(rc)lu.  Error: "
 "%(error)s"
-msgstr ""
+msgstr "删除卷 %(volumename)s 时出错。 返回码:%(rc)lu。  错误:%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:523
 #, python-format
 msgid "Leaving delete_volume: %(volumename)s  Return code: %(rc)lu"
-msgstr ""
+msgstr "正在离开 delete_volume %(volumename)s  返回码:%(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:530
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:275
 msgid "Entering create_snapshot."
-msgstr ""
+msgstr "正在进入 create_snapshot。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:534
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:278
-#, fuzzy, python-format
+#, python-format
 msgid "Create snapshot: %(snapshot)s: volume: %(volume)s"
-msgstr "创建卷 %s 的快照"
+msgstr "创建快照:%(snapshot)s:卷:%(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:544
 #: cinder/volume/drivers/emc/emc_smis_common.py:972
 #, python-format
 msgid "Device ID: %(deviceid)s: Storage System: %(storagesystem)s"
-msgstr ""
+msgstr "设备标识:%(deviceid)s:存储系统:%(storagesystem)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:551
 #: cinder/volume/drivers/emc/emc_smis_common.py:553
 #: cinder/volume/drivers/emc/emc_smis_common.py:639
 #, python-format
 msgid "Cannot find Replication Service to create snapshot for volume %s."
-msgstr ""
+msgstr "找不到用于针对卷 %s 创建快照的复制服务。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:558
 #, python-format
@@ -6136,52 +6214,54 @@ msgid ""
 "Source: %(volume)s  Replication Service: %(service)s  ElementName: "
 "%(elementname)s  Sync Type: 7  SourceElement: %(sourceelement)s."
 msgstr ""
+"创建快照:方法:CreateElementReplica:目标:%(snapshot)s  源:%(volume)s  "
+"复制服务:%(service)s  元素名称:%(elementname)s  同步类型:7  源元素:%(sourceelement)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:574
 #, python-format
 msgid ""
 "Create Snapshot: Volume: %(volumename)s  Snapshot: %(snapshotname)s  "
 "Return code: %(rc)lu"
-msgstr ""
+msgstr "创建快照:卷:%(volumename)s  快照:%(snapshotname)s  返回码:%(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:583
-#, fuzzy, python-format
+#, python-format
 msgid ""
 "Error Create Snapshot: %(snapshot)s Volume: %(volume)s Error: "
 "%(errordesc)s"
-msgstr "创建卷 %s 的快照"
+msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:605
 #, python-format
 msgid ""
 "Leaving create_snapshot: Snapshot: %(snapshot)s Volume: %(volume)s  "
 "Return code: %(rc)lu."
-msgstr ""
+msgstr "正在离开 create_snapshot:快照:%(snapshot)s 卷:%(volume)s  返回码:%(rc)lu。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:613
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:302
 msgid "Entering delete_snapshot."
-msgstr ""
+msgstr "正在进入 delete_snapshot。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:617
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:306
-#, fuzzy, python-format
+#, python-format
 msgid "Delete Snapshot: %(snapshot)s: volume: %(volume)s"
-msgstr "创建卷 %s 的快照"
+msgstr "删除快照:%(snapshot)s:卷:%(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:623
 #, python-format
 msgid ""
 "Delete Snapshot: %(snapshot)s: volume: %(volume)s. Finding "
 "StorageSychronization_SV_SV."
-msgstr ""
+msgstr "删除快照:%(snapshot)s:卷:%(volume)s。正在查找 StorageSychronization_SV_SV。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:631
 #, python-format
 msgid ""
 "Snapshot: %(snapshot)s: volume: %(volume)s not found on the array. No "
 "snapshot to delete."
-msgstr ""
+msgstr "数组中找不到快照:%(snapshot)s:卷:%(volume)s。没有要删除的快照。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:646
 #, python-format
@@ -6190,20 +6270,23 @@ msgid ""
 "ModifyReplicaSynchronization:  Replication Service: %(service)s  "
 "Operation: 19  Synchronization: %(sync_name)s."
 msgstr ""
+"删除快照:目标:%(snapshot)s  源:%(volume)s。 "
+"方法:ModifyReplicaSynchronization:复制服务:%(service)s  操作:19  "
+"同步:%(sync_name)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:662
 #, python-format
 msgid ""
 "Delete Snapshot: Volume: %(volumename)s  Snapshot: %(snapshotname)s  "
 "Return code: %(rc)lu"
-msgstr ""
+msgstr "删除快照:卷:%(volumename)s  快照:%(snapshotname)s  返回码:%(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:671
 #, python-format
 msgid ""
 "Error Delete Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s. Return code: %(rc)lu. Error: %(error)s"
-msgstr ""
+msgstr "删除快照时出错:卷:%(volumename)s  快照:%(snapshotname)s。返回码:%(rc)lu。错误:%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:696
 #: cinder/volume/drivers/emc/emc_smis_common.py:711
@@ -6230,7 +6313,7 @@ msgstr ""
 msgid ""
 "Leaving delete_snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu."
-msgstr ""
+msgstr "正在离开 delete_snapshot:卷:%(volumename)s  快照:%(snapshotname)s  返回码:%(rc)lu。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:745
 #, python-format
@@ -6238,21 +6321,23 @@ msgid ""
 "ExposePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(lun_name)s"
 "  InitiatorPortIDs: %(initiator)s  DeviceAccesses: 2"
 msgstr ""
+"ExposePaths:%(vol)s  ConfigServicie:%(service)s  LUNames:%(lun_name)s  "
+"InitiatorPortIDs:%(initiator)s DeviceAccesses:2"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:760
 #, python-format
 msgid "ExposePaths parameter LunMaskingSCSIProtocolController: %(lunmasking)s"
-msgstr ""
+msgstr "ExposePaths 参数 LunMaskingSCSIProtocolController:%(lunmasking)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:771
-#, fuzzy, python-format
+#, python-format
 msgid "Error mapping volume %s."
-msgstr "启动xvp发生错误:%s"
+msgstr "映射卷 %s 时出错。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:775
-#, fuzzy, python-format
+#, python-format
 msgid "ExposePaths for volume %s completed successfully."
-msgstr "卷%s:删除成功"
+msgstr "卷 %s 的 ExposePaths 操作已成功完成。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:791
 #, python-format
@@ -6260,16 +6345,18 @@ msgid ""
 "HidePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(device_id)s  "
 "LunMaskingSCSIProtocolController: %(lunmasking)s"
 msgstr ""
+"HidePaths:%(vol)s  ConfigServicie:%(service)s  LUNames:%(device_id)s  "
+"LunMaskingSCSIProtocolController:%(lunmasking)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:804
 #, python-format
 msgid "Error unmapping volume %s."
-msgstr ""
+msgstr "取消映射卷 %s 时出错。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:808
-#, fuzzy, python-format
+#, python-format
 msgid "HidePaths for volume %s completed successfully."
-msgstr "卷%s:删除成功"
+msgstr "卷 %s 的 HidePaths 操作已成功完成。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:821
 #, python-format
@@ -6277,16 +6364,18 @@ msgid ""
 "AddMembers: ConfigServicie: %(service)s  MaskingGroup: %(masking_group)s"
 "  Members: %(vol)s"
 msgstr ""
+"AddMembers:ConfigServicie:%(service)s  MaskingGroup:%(masking_group)s  "
+"Members:%(vol)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:836
 #, python-format
 msgid "Error mapping volume %(vol)s. %(error)s"
-msgstr ""
+msgstr "映射卷 %(vol)s 时出错。%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:841
-#, fuzzy, python-format
+#, python-format
 msgid "AddMembers for volume %s completed successfully."
-msgstr "卷%s:删除成功"
+msgstr "卷 %s 的 AddMembers 操作已成功完成。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:854
 #, python-format
@@ -6294,52 +6383,54 @@ msgid ""
 "RemoveMembers: ConfigServicie: %(service)s  MaskingGroup: "
 "%(masking_group)s  Members: %(vol)s"
 msgstr ""
+"RemoveMembers:ConfigServicie:%(service)s  MaskingGroup:%(masking_group)s"
+"  Members:%(vol)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:867
 #, python-format
 msgid "Error unmapping volume %(vol)s. %(error)s"
-msgstr ""
+msgstr "取消映射卷 %(vol)s 时出错。%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:872
-#, fuzzy, python-format
+#, python-format
 msgid "RemoveMembers for volume %s completed successfully."
-msgstr "卷%s:删除成功"
+msgstr "卷 %s 的 RemoveMembers 操作已成功完成。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:878
-#, fuzzy, python-format
+#, python-format
 msgid "Map volume: %(volume)s"
-msgstr "没有id为 %(volume_id)s 的 sm_volume"
+msgstr "映射卷:%(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:887
 #: cinder/volume/drivers/emc/emc_smis_common.py:917
 #, python-format
 msgid "Cannot find Controller Configuration Service for storage system %s"
-msgstr ""
+msgstr "找不到存储系统 %s 的控制器配置服务"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:901
-#, fuzzy, python-format
+#, python-format
 msgid "Unmap volume: %(volume)s"
-msgstr "没有id为 %(volume_id)s 的 sm_volume"
+msgstr "取消映射卷:%(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:907
 #, python-format
 msgid "Volume %s is not mapped. No volume to unmap."
-msgstr ""
+msgstr "未映射卷 %s。没有要取消映射的卷。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:931
 #, python-format
 msgid "Initialize connection: %(volume)s"
-msgstr ""
+msgstr "初始化连接:%(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:937
-#, fuzzy, python-format
+#, python-format
 msgid "Volume %s is already mapped."
-msgstr "rootfs 已经被移除了"
+msgstr "已经映射卷 %s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:949
 #, python-format
 msgid "Terminate connection: %(volume)s"
-msgstr ""
+msgstr "终止连接:%(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:956
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:197
@@ -6394,19 +6485,17 @@ msgid "Found Storage Type in config file: %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1063
-#, fuzzy
 msgid "Storage type not found."
-msgstr "镜像没有找到。"
+msgstr "找不到存储类型。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1079
 #, python-format
 msgid "Found Masking View: %s"
-msgstr ""
+msgstr "找到了掩码视图:%s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1082
-#, fuzzy
 msgid "Masking View not found."
-msgstr "镜像没有找到。"
+msgstr "找不到掩码视图。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1097
 #, python-format
@@ -6418,103 +6507,100 @@ msgid "Timeout not specified."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1122
-#, fuzzy
 msgid "Ecom user not found."
-msgstr "没有找到服务器。"
+msgstr "找不到 Ecom 用户。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1142
 #, python-format
 msgid "Ecom IP: %(ecomIp)s Port: %(ecomPort)s"
-msgstr ""
+msgstr "Ecom IP:%(ecomIp)s 端口:%(ecomPort)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1146
-#, fuzzy
 msgid "Ecom server not found."
-msgstr "没有找到服务器。"
+msgstr "找不到 Ecom 服务器。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1153
-#, fuzzy
 msgid "Cannot connect to ECOM server"
-msgstr "连接到 %s 的AMQP服务器"
+msgstr "无法连接至 ECOM 服务器"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1165
 #, python-format
 msgid "Found Replication Service: %s"
-msgstr ""
+msgstr "找到了复制服务:%s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1178
 #, python-format
 msgid "Found Storage Configuration Service: %s"
-msgstr ""
+msgstr "找到了存储配置服务:%s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1191
 #, python-format
 msgid "Found Controller Configuration Service: %s"
-msgstr ""
+msgstr "找到了控制器配置服务:%s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1204
 #, python-format
 msgid "Found Storage Hardware ID Management Service: %s"
-msgstr ""
+msgstr "找到了存储硬件标识管理服务:%s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1248
-#, fuzzy, python-format
+#, python-format
 msgid "Pool %(storage_type)s is not found."
-msgstr "角色 %(role_id)s 没有找到。"
+msgstr "找不到池 %(storage_type)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1254
 #, python-format
 msgid "Storage system not found for pool %(storage_type)s."
-msgstr ""
+msgstr "找不到池 %(storage_type)s 的存储系统。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1260
 #, python-format
 msgid "Pool: %(pool)s  SystemName: %(systemname)s."
-msgstr ""
+msgstr "池:%(pool)s  系统名称:%(systemname)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1277
 #, python-format
 msgid "Pool name: %(poolname)s  System name: %(systemname)s."
-msgstr ""
+msgstr "池名称:%(poolname)s  系统名称:%(systemname)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1292
-#, fuzzy, python-format
+#, python-format
 msgid "Volume %(volumename)s not found on the array."
-msgstr "卷 %(volume_id)s 没有找到。"
+msgstr "数组中找不到卷 %(volumename)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1295
-#, fuzzy, python-format
+#, python-format
 msgid "Volume name: %(volumename)s  Volume instance: %(vol_instance)s."
-msgstr "没有为实例 %(instance_id)s 找到卷。"
+msgstr "卷名:%(volumename)s  卷实例:%(vol_instance)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1310
 #, python-format
 msgid "Source: %(volumename)s  Target: %(snapshotname)s."
-msgstr ""
+msgstr "源:%(volumename)s  目标:%(snapshotname)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1322
 #, python-format
 msgid ""
 "Source: %(volumename)s  Target: %(snapshotname)s. Storage Synchronized "
 "not found. "
-msgstr ""
+msgstr "源:%(volumename)s  目标:%(snapshotname)s。找不到已进行同步的存储。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1327
 #, python-format
 msgid ""
 "Storage system: %(storage_system)s  Storage Synchronized instance: "
 "%(sync)s."
-msgstr ""
+msgstr "存储系统:%(storage_system)s  已同步的存储实例:%(sync)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1353
-#, fuzzy, python-format
+#, python-format
 msgid "Error finding %s."
-msgstr "在存储库 %s 寻找VDIs出错"
+msgstr "查找 %s 时出错。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1357
 #, python-format
 msgid "Found %(name)s: %(initiator)s."
-msgstr ""
+msgstr "找到了 %(name)s:%(initiator)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1417
 #, python-format
@@ -6522,6 +6608,8 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage system %(storage_system)s "
 "and initiator %(initiator)s is  %(ctrl)s."
 msgstr ""
+"存储系统 %(storage_system)s 和发起方 %(initiator)s 的 "
+"LunMaskingSCSIProtocolController 为 %(ctrl)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1458
 #, python-format
@@ -6529,13 +6617,15 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage volume %(vol)s and initiator"
 " %(initiator)s is  %(ctrl)s."
 msgstr ""
+"存储卷 %(vol)s 和发起方 %(initiator)s 的 LunMaskingSCSIProtocolController 为 "
+"%(ctrl)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1472
 #, python-format
 msgid ""
 "Volume %(name)s not found on the array. Cannot determine if there are "
 "volumes mapped."
-msgstr ""
+msgstr "数组中找不到卷 %(name)s。无法确定是否存在已映射的卷。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1484
 #, python-format
@@ -6543,18 +6633,20 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage system %(storage)s and "
 "%(connector)s is %(ctrl)s."
 msgstr ""
+"存储系统 %(storage)s 和发起方 %(connector)s 的 LunMaskingSCSIProtocolController 为 "
+"%(ctrl)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1496
 #, python-format
 msgid ""
 "Found %(numVolumesMapped)d volumes on storage system %(storage)s mapped "
 "to %(initiator)s."
-msgstr ""
+msgstr "找到了映射至 %(initiator)s 的存储系统 %(storage)s 上的 %(numVolumesMapped)d。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1531
 #, python-format
 msgid "Available device number on %(storage)s: %(device)s."
-msgstr ""
+msgstr "%(storage)s 上的可用设备号:%(device)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1556
 #, python-format
@@ -6566,27 +6658,27 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_smis_common.py:1592
 #, python-format
 msgid "Device number not found for volume %(volumename)s %(vol_instance)s."
-msgstr ""
+msgstr "找不到卷 %(volumename)s %(vol_instance)s 的设备号。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1597
 #, python-format
 msgid "Found device number %(device)d for volume %(volumename)s %(vol_instance)s."
-msgstr ""
+msgstr "找到了卷 %(volumename)s %(vol_instance)s 的设备号 %(device)d。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1607
 #, python-format
 msgid "Device info: %(data)s."
-msgstr ""
+msgstr "设备信息:%(data)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1629
 #, python-format
 msgid "Masking view: %(view)s DeviceMaskingGroup: %(masking)s."
-msgstr ""
+msgstr "掩码视图:%(view)s DeviceMaskingGroup:%(masking)s."
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1651
 #, python-format
 msgid "Found Storage Processor System: %s"
-msgstr ""
+msgstr "找到了存储处理器系统:%s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1679
 #, python-format
@@ -6594,52 +6686,54 @@ msgid ""
 "iSCSIProtocolEndpoint for storage system %(storage_system)s and SP %(sp)s"
 " is  %(endpoint)s."
 msgstr ""
+"存储系统 %(storage_system)s 和 SP %(sp)s 的 iSCSIProtocolEndpoint 为 "
+"%(endpoint)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1720
 msgid "Error finding Storage Hardware ID Service."
-msgstr ""
+msgstr "查找存储硬件标识服务时出错。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1726
 #, python-format
 msgid ""
 "EMCGetTargetEndpoints: Service: %(service)s  Storage HardwareIDs: "
 "%(hardwareids)s."
-msgstr ""
+msgstr "EMCGetTargetEndpoints:服务:%(service)s  存储硬件标识:%(hardwareids)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1738
 msgid "Error finding Target WWNs."
-msgstr ""
+msgstr "查找目标 WWN 时出错。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1748
 #, python-format
 msgid "Add target WWN: %s."
-msgstr ""
+msgstr "添加目标 WWN:%s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1750
 #, python-format
 msgid "Target WWNs: %s."
-msgstr ""
+msgstr "目标 WWN:%s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1766
 #, python-format
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
-msgstr ""
+msgstr "%(wwpns)s 的存储硬件标识为 %(foundInstances)s。"
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
-msgstr ""
+msgstr "在存储系统 %(storage)s 上找不到 SP %(sp)s 的 iSCSI 端点。"
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
-msgstr ""
+msgstr "ISCSI 属性:%s"
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:77
 msgid "Pool name is not specified."
@@ -6718,9 +6812,9 @@ msgid "Failed to list %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:251
-#, fuzzy, python-format
+#, python-format
 msgid "create_export: Volume: %(volume)s  Device ID: %(device_id)s"
-msgstr "把卷 %(volume_id)s 附加到实例 %(server_id)s 的 %(device)s 设备上"
+msgstr "create_export:卷:%(volume)s  设备标识:%(device_id)s"
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:292
 #, python-format
@@ -6920,93 +7014,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
-#, fuzzy, python-format
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
+#, python-format
 msgid "XML exception reading parameter: %s"
-msgstr "加载扩展发生异常:%s"
+msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
-#, fuzzy, python-format
+#: cinder/volume/drivers/hds/hds.py:251
+#, python-format
 msgid "HDP not found: %s"
-msgstr "没有找到主机"
+msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
-#, fuzzy, python-format
+#: cinder/volume/drivers/hds/hds.py:396
+#, python-format
 msgid "delete lun %(lun)s on %(name)s"
-msgstr "删除id为 %s 的卷"
+msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
-#, fuzzy, python-format
+#: cinder/volume/drivers/hds/hds.py:523
+#, python-format
 msgid "LUN %s is deleted."
-msgstr "rootfs 已经被移除了"
+msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7094,7 +7188,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7161,7 +7255,7 @@ msgstr ""
 #: cinder/volume/drivers/huawei/rest_common.py:327
 #, python-format
 msgid "create_snapshot:snapshot name:%(snapshot)s, volume name:%(volume)s."
-msgstr ""
+msgstr "create_snapshot:快照名称:%(snapshot)s,卷名:%(volume)s。"
 
 #: cinder/volume/drivers/huawei/rest_common.py:354
 #, python-format
@@ -7204,7 +7298,7 @@ msgstr ""
 #: cinder/volume/drivers/huawei/rest_common.py:874
 #, python-format
 msgid "terminate_connection:volume name: %(volume)s, initiator name: %(ini)s."
-msgstr ""
+msgstr "terminate_connection:卷名:%(volume)s,发起方名称:%(ini)s。"
 
 #: cinder/volume/drivers/huawei/rest_common.py:937
 #, python-format
@@ -7263,7 +7357,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7294,12 +7388,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7332,7 +7426,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7343,111 +7437,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7455,77 +7549,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7636,7 +7730,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/gpfs.py:406
 #, python-format
 msgid "%s is not a directory."
-msgstr ""
+msgstr "%s 不是一个目录。"
 
 #: cinder/volume/drivers/ibm/gpfs.py:416
 #, python-format
@@ -7679,97 +7773,97 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
-#, fuzzy, python-format
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
+#, python-format
 msgid "%s is not set"
-msgstr "租户ID没有设"
+msgstr "未设置 %s "
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:143
 msgid "enter: do_setup"
-msgstr ""
+msgstr "请进入:do_setup"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:153
 #, python-format
@@ -7782,11 +7876,11 @@ msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:214
 msgid "leave: do_setup"
-msgstr ""
+msgstr "请离开:do_setup"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:218
 msgid "enter: check_for_setup_error"
-msgstr ""
+msgstr "请进入:check_for_setup_error"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:222
 msgid "Unable to determine system name"
@@ -7800,23 +7894,23 @@ msgstr ""
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
-msgstr ""
+msgstr "密码或 SSH 专用密钥对于认证必需的:请设置 either san_password 或 san_private_key 选项"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:246
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
-msgstr ""
+msgstr "为 storwize_svc_flashcopy_timeout 指定了非法值 %d:有效值介于 0 到 600 之间"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
 msgid "leave: check_for_setup_error"
-msgstr ""
+msgstr "请离开:check_for_setup_error"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:264
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
-msgstr ""
+msgstr "ensure_export:存储器中找不到卷 %s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:283
 msgid "The connector does not contain the required information."
@@ -7825,7 +7919,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:307
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "请输入:initialize_connection:具有连接器 %(conn)s 的卷 %(vol)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:338
 msgid "CHAP secret exists for host but CHAP is disabled"
@@ -7834,29 +7928,29 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:343
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
-msgstr ""
+msgstr "initialize_connection:未能获取卷 %s 的属性"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:355
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
-msgstr ""
+msgstr "lsvdisk 中找不到期望的列名:%s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:357
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
-msgstr ""
+msgstr "initialize_connection:缺少卷 %s 的卷属性"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:374
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
-msgstr ""
+msgstr "initialize_connection:I/O 组 %(gid)s 中找不到卷 %(vol)s 的节点"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
-msgstr ""
+msgstr "initialize_connection:找不到卷 %s 的首选节点"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:406
 msgid ""
@@ -7864,14 +7958,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
-msgstr ""
+msgstr "initialize_connection:未能收集卷 %(vol)s 和连接器 %(conn)s 的返回属性。\n"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7879,101 +7980,110 @@ msgid ""
 " connector %(conn)s\n"
 " properties: %(prop)s"
 msgstr ""
+"请离开:initialize_connection:\n"
+"卷:%(vol)s\n"
+"连接器:%(conn)s\n"
+"属性:%(prop)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "请输入:terminate_connection:具有连接器 %(conn)s 的卷 %(vol)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "请离开:terminate_connection:具有连接器 %(conn)s 的卷 %(vol)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
-msgstr ""
+msgstr "create_volume_from_snapshot:源和目标大小不同。"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
-msgstr ""
+msgstr "create_cloned_volume:源和目标大小不同。"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7981,31 +8091,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
-msgstr ""
+msgstr "未能从存储获取池数据"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8107,34 +8224,34 @@ msgstr ""
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
-msgstr ""
+msgstr "为 storwize_svc_vol_rsize 指定了非法值:设置为百分比 (0-100) 或 -1"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:388
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
-msgstr ""
+msgstr "为 storwize_svc_vol_warning 指定了非法值:设置为百分比 (0-100)"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:395
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
-msgstr ""
+msgstr "为 storwize_svc_vol_grainsize 指定了非法值:设置为 32、64、128 或 256"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
 msgid "System does not support compression"
-msgstr ""
+msgstr "系统不支持压缩"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:407
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
-msgstr ""
+msgstr "如果压缩设置为 true,那么还必须设置 rsize(不等于 -1)"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:413
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
-msgstr ""
+msgstr "为 storwize_svc_connection_protocol 指定了非法值 %(prot)s:有效值为 %(enabled)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:422
 #, python-format
@@ -8153,7 +8270,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:504
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
-msgstr ""
+msgstr "请离开:_create_vdisk:卷 %s "
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:531
 #, python-format
@@ -8189,7 +8306,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:601
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
-msgstr ""
+msgstr "从 %(src)s 至 %(tgt)s 的映射中不涉及 Vdisk %(name)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:637
 #, python-format
@@ -8226,15 +8343,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8246,18 +8370,17 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:213
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:250
-#, fuzzy, python-format
+#, python-format
 msgid ""
 "CLI Exception output:\n"
 " command: %(cmd)s\n"
 " stdout: %(out)s\n"
 " stderr: %(err)s"
 msgstr ""
-"%(description)s\n"
+"CLI 异常输出:\n"
 "命令:%(cmd)s\n"
-"退出代码:%(exit_code)s\n"
-"标准输出:%(stdout)r\n"
-"标准错误输出:%(stderr)r"
+"标准输出:%(out)s\n"
+"标准错误:%(err)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:53
 #, python-format
@@ -8289,12 +8412,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -8320,7 +8443,7 @@ msgstr ""
 
 #: cinder/volume/drivers/netapp/common.py:80
 msgid "Required configuration not found"
-msgstr ""
+msgstr "找不到必需的配置选项"
 
 #: cinder/volume/drivers/netapp/common.py:108
 #, python-format
@@ -8365,36 +8488,36 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:69
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
-msgstr ""
+msgstr "未定义 LUN %(name)s 的元数据属性 %(prop)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:105
-#, fuzzy, python-format
+#, python-format
 msgid "Using NetApp filer: %s"
-msgstr "正在删除基文件:%s"
+msgstr "正在使用 NetApp 文件管理器:%s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:150
 msgid "Success getting LUN list from server"
-msgstr ""
+msgstr "从服务器成功获取 LUN 列表"
 
 #: cinder/volume/drivers/netapp/iscsi.py:166
-#, fuzzy, python-format
+#, python-format
 msgid "Created LUN with name %s"
-msgstr "已经创建路径为 %s 的目录"
+msgstr "已创建名称为 %s 的 LUN"
 
 #: cinder/volume/drivers/netapp/iscsi.py:175
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
-msgstr ""
+msgstr "LUN 表中没有针对卷/快照 %(name)s 的条目。"
 
 #: cinder/volume/drivers/netapp/iscsi.py:191
-#, fuzzy, python-format
+#, python-format
 msgid "Destroyed LUN %s"
-msgstr "嵌套(调用)返回 %s"
+msgstr "已破坏 LUN %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:227
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
-msgstr ""
+msgstr "已将 LUN %(name)s 映射至发起方 %(initiator_name)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
@@ -8404,24 +8527,24 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:238
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get LUN target details for the LUN %s"
-msgstr "为ip: %s获取元数据失败"
+msgstr "未能获取 LUN %s 的 LUN 目标详细信息"
 
 #: cinder/volume/drivers/netapp/iscsi.py:249
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get target portal for the LUN %s"
-msgstr "为ip: %s获取元数据失败"
+msgstr "未能获取 LUN %s 的目标门户网站"
 
 #: cinder/volume/drivers/netapp/iscsi.py:252
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get target IQN for the LUN %s"
-msgstr "为ip: %s获取元数据失败"
+msgstr "未能获取 LUN %s 的目标 IQN"
 
 #: cinder/volume/drivers/netapp/iscsi.py:290
-#, fuzzy, python-format
+#, python-format
 msgid "Snapshot %s deletion successful"
-msgstr "快照 %s:删除成功"
+msgstr "快照 %s 删除成功"
 
 #: cinder/volume/drivers/netapp/iscsi.py:310
 #: cinder/volume/drivers/netapp/iscsi.py:557
@@ -8434,21 +8557,21 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:325
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
-msgstr ""
+msgstr "取消从发起方 %(initiator_name)s 映射 LUN %(name)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:414
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
-msgstr ""
+msgstr "映射 LUN 时出错。代码:%(code)s,消息:%(message)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:433
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
-msgstr ""
+msgstr "取消映射 LUN 时出错。代码:%(code)s,消息:%(message)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:503
 msgid "Object is not a NetApp LUN."
-msgstr ""
+msgstr "对象不是 NetApp LUN。"
 
 #: cinder/volume/drivers/netapp/iscsi.py:535
 #, python-format
@@ -8547,12 +8670,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:841
 #, python-format
 msgid "No iscsi service found for vserver %s"
-msgstr ""
+msgstr "找不到针对 vserver %s 的 iSCSI 服务"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1008
 #, python-format
 msgid "Cloned LUN with new name %s"
-msgstr ""
+msgstr "具有新名称 %s 的克隆 LUN"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1012
 #, python-format
@@ -8575,9 +8698,9 @@ msgid "Api version could not be determined."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:1190
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get vol with required size for volume: %s"
-msgstr "为ip: %s获取元数据失败"
+msgstr "未能针对卷 %s 获取必需大小的卷"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1299
 #, python-format
@@ -8587,12 +8710,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:1443
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
-msgstr ""
+msgstr "对源 %(name)s 和目标 %(new_name)s 的克隆操作已完成"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1446
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
-msgstr ""
+msgstr "对源 %(name)s 和目标 %(new_name)s 的克隆操作失败"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1509
 msgid "Volume refresh job already running. Returning..."
@@ -8809,7 +8932,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:866
 #, python-format
 msgid "No interface found on cluster for ip %s"
-msgstr ""
+msgstr "集群中找不到 IP %s 的接口"
 
 #: cinder/volume/drivers/netapp/nfs.py:907
 #, python-format
@@ -8819,6 +8942,9 @@ msgid ""
 "%(junction)s\n"
 "                                   "
 msgstr ""
+"集群中没有具有 vserver 的卷\n"
+"                                   %(vserver)s 和结点路径 %(junction)s\n"
+"                                   "
 
 #: cinder/volume/drivers/netapp/nfs.py:914
 #, python-format
@@ -8954,12 +9080,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:1349
 #, python-format
 msgid "No storage path found for export path %s"
-msgstr ""
+msgstr "对于导出路径 %s,找不到存储路径"
 
 #: cinder/volume/drivers/netapp/nfs.py:1359
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
-msgstr ""
+msgstr "正在使用源 %(src_path)s 和目标 %(dest_path)s 克隆"
 
 #: cinder/volume/drivers/netapp/ssc_utils.py:241
 #, python-format
@@ -9035,7 +9161,7 @@ msgstr ""
 
 #: cinder/volume/drivers/netapp/utils.py:125
 msgid "ems executed successfully."
-msgstr ""
+msgstr "ems 创建成功。"
 
 #: cinder/volume/drivers/netapp/utils.py:127
 #, python-format
@@ -9326,9 +9452,9 @@ msgid "Error deleting vol with label %s."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:105
-#, fuzzy, python-format
+#, python-format
 msgid "Volume %s does not exist in Nexenta SA"
-msgstr "卷组 %s 不存在"
+msgstr "卷 %s 在 Nexenta SA 中不存在"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:151
 #, python-format
@@ -9404,68 +9530,67 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
-msgstr ""
+msgstr "在确保导出时,已忽略目标创建错误“%s”"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:486
 #, python-format
 msgid "Ignored target group creation error \"%s\" while ensuring export"
-msgstr ""
+msgstr "在确保导出时,已忽略目标组创建错误“%s”"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:498
 #, python-format
 msgid "Ignored target group member addition error \"%s\" while ensuring export"
-msgstr ""
+msgstr "在确保导出时,已忽略目标组成员添加错误“%s”"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:508
 #, python-format
 msgid "Ignored LU creation error \"%s\" while ensuring export"
-msgstr ""
+msgstr "在确保导出时,已忽略 LU 创建错误“%s”"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:518
 #, python-format
 msgid "Ignored LUN mapping entry addition error \"%s\" while ensuring export"
-msgstr ""
+msgstr "在确保导出时,已忽略 LUN 映射条目添加错误“%s”"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:551
 #, python-format
 msgid ""
 "Got error trying to destroy target group %(target_group)s, assuming it is"
 " already gone: %(exc)s"
-msgstr ""
+msgstr "尝试销毁目标组 %(target_group)s 时发生错误,假定它已丢失:%(exc)s"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:559
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
 "gone: %(exc)s"
-msgstr ""
+msgstr "尝试删除目标 %(target)s 时发生错误,假定它已丢失:%(exc)s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:83
-#, fuzzy, python-format
+#, python-format
 msgid "Sending JSON data: %s"
-msgstr "给定数据:%s"
+msgstr "正在发送 JSON 数据:%s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:88
 msgid "No headers in server response"
-msgstr ""
+msgstr "服务器响应中不存在任何头"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:89
-#, fuzzy
 msgid "Bad response from server"
-msgstr "来自SolidFire API的错误响应"
+msgstr "来自服务器的响应不正确"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:90
 #, python-format
 msgid "Auto switching to HTTPS connection to %s"
-msgstr ""
+msgstr "自动切换至与 %s 的 HTTPS 连接"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:96
-#, fuzzy, python-format
+#, python-format
 msgid "Got response: %s"
-msgstr "响应 %s"
+msgstr "已获取响应:%s"
 
 #: cinder/volume/drivers/nexenta/nfs.py:85
 #, python-format
@@ -9528,288 +9653,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr "指定san_password或者san_private_key"
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr "san_ip必须设置"
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
-msgstr ""
+msgstr "无法解析列表视图输出:%s"
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 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:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
-msgstr ""
+msgstr "数组中不存在 CPG (%s)"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
-msgstr ""
+msgstr "必须指定有效角色 %(valid)s,值“%(persona)s”无效。"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
-msgstr ""
+msgstr "指定有效供应类型 %(valid)s,值“%(prov)s”无效。"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:763
-#, fuzzy, python-format
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
+#, python-format
 msgid "Volume (%s) already exists on array"
-msgstr "安全组 %s 已经存在"
+msgstr "数组中已存在卷 (%s)"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
-msgstr ""
+msgstr "IP 地址格式 ‘%s’ 无效"
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr "返回CLIQ命令 %s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, 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:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr "不支持local_path"
 
@@ -10203,7 +10332,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10363,7 +10492,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10483,62 +10612,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10764,7 +10893,7 @@ msgstr ""
 
 #: cinder/volume/drivers/vmware/volumeops.py:744
 msgid "Copying disk data before snapshot of the VM"
-msgstr ""
+msgstr "正在复制磁盘数据(在生成 VM 的快照之前)"
 
 #: cinder/volume/drivers/vmware/volumeops.py:754
 #, python-format
@@ -10821,9 +10950,9 @@ msgid "Filtered hubs: %s"
 msgstr ""
 
 #: cinder/volume/drivers/windows/windows.py:102
-#, fuzzy, python-format
+#, python-format
 msgid "Creating folder %s "
-msgstr "正在创建存储库 %s"
+msgstr "正在创建文件夹 %s"
 
 #: cinder/volume/drivers/windows/windows_utils.py:47
 #, python-format
@@ -10850,7 +10979,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10858,35 +10987,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10894,42 +11028,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/zh_HK/LC_MESSAGES/cinder.po b/cinder/locale/zh_HK/LC_MESSAGES/cinder.po
index bde1f29af..c70bc97ea 100644
--- a/cinder/locale/zh_HK/LC_MESSAGES/cinder.po
+++ b/cinder/locale/zh_HK/LC_MESSAGES/cinder.po
@@ -1,5 +1,5 @@
-# Chinese (Hong Kong SAR China) translations for cinder.
-# Copyright (C) 2013 ORGANIZATION
+# Chinese (Traditional, Hong Kong SAR China) translations for cinder.
+# Copyright (C) 2014 ORGANIZATION
 # This file is distributed under the same license as the cinder project.
 #
 # Translators:
@@ -7,11 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-03-29 06:10+0000\n"
-"PO-Revision-Date: 2013-05-29 08:13+0000\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Chinese (Hong Kong) "
-"(http://www.transifex.com/projects/p/openstack/language/zh_HK/)\n"
+"(http://www.transifex.com/projects/p/cinder/language/zh_HK/)\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -737,34 +737,34 @@ msgstr ""
 msgid "Rule checked when requested rule is not found"
 msgstr ""
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -783,17 +783,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
 msgstr ""
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -802,39 +802,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
 msgstr ""
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
 msgstr ""
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
 msgstr ""
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
 msgstr ""
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
 msgstr ""
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
 msgstr ""
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -1327,26 +1327,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1452,7 +1464,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1698,7 +1710,7 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1707,40 +1719,40 @@ msgstr ""
 msgid "Backup status must be available or error"
 msgstr ""
 
-#: cinder/backup/api.py:115
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
 msgstr ""
 
-#: cinder/backup/api.py:150
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
 msgstr ""
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
 msgstr ""
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:180
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
 msgstr ""
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
 msgstr ""
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
 msgstr ""
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2022,7 +2034,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2087,7 +2099,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2098,237 +2110,296 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
 #, python-format
-msgid "Creating base image='%s'"
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:702
+#, python-format
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
@@ -2862,7 +2933,7 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
@@ -2884,45 +2955,49 @@ msgstr ""
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
+msgstr ""
+
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
 msgid "valid iqn needed for show_target"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -3047,11 +3122,11 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -3065,7 +3140,7 @@ msgstr ""
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
 msgstr ""
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
@@ -3079,49 +3154,49 @@ msgstr ""
 msgid "Unrecognized read_deleted value '%s'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3172,11 +3247,11 @@ msgstr ""
 msgid "reservations table not dropped"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
 msgstr ""
 
@@ -3405,22 +3480,22 @@ msgstr ""
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
 msgstr ""
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
 msgstr ""
@@ -3431,7 +3506,7 @@ msgid "task run outlasted interval by %s sec"
 msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
 msgstr ""
 
@@ -3758,12 +3833,12 @@ msgstr ""
 msgid "Received %(service_name)s service update from %(host)s."
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3834,7 +3909,7 @@ msgstr ""
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3868,7 +3943,7 @@ msgstr ""
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
 msgstr ""
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3900,7 +3975,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3909,12 +3984,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3922,7 +3997,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -3940,7 +4015,7 @@ msgstr ""
 msgid "Result data: %s"
 msgstr ""
 
-#: cinder/tests/api/contrib/test_backups.py:737
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
 msgstr ""
 
@@ -4200,66 +4275,66 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
@@ -4293,20 +4368,20 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4321,18 +4396,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4355,7 +4430,7 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
@@ -4375,7 +4450,7 @@ msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
@@ -4384,13 +4459,13 @@ msgstr ""
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4398,10 +4473,17 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
+msgstr ""
+
 #: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
 #: cinder/volume/iscsi.py:234
 #, python-format
@@ -4440,285 +4522,279 @@ msgstr ""
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
 msgstr ""
 
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
-
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
 msgstr ""
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
 msgstr ""
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
 msgstr ""
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4773,14 +4849,14 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
@@ -4906,7 +4982,7 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
 #, python-format
 msgid "Error running SSH command: %s"
@@ -4986,219 +5062,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5307,174 +5383,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:718
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
+#: cinder/volume/drivers/rbd.py:754
 #, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5641,8 +5717,8 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
@@ -5675,12 +5751,12 @@ msgstr ""
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -5751,19 +5827,19 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
 #, python-format
 msgid "Cannot find device number for volume %s"
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
 msgstr ""
@@ -6569,18 +6645,18 @@ msgstr ""
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
 msgstr ""
@@ -6864,93 +6940,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7038,7 +7114,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7207,7 +7283,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7238,12 +7314,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7276,7 +7352,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7287,111 +7363,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7399,77 +7475,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7623,90 +7699,90 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
@@ -7808,14 +7884,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, 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:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7824,100 +7907,105 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7925,31 +8013,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8170,15 +8265,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8228,12 +8330,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -9343,7 +9445,7 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
 msgstr ""
@@ -9466,288 +9568,292 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, 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:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, 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:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, 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:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, 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:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, 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:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
 msgstr ""
 
@@ -10141,7 +10247,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10301,7 +10407,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10421,62 +10527,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10788,7 +10894,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10796,35 +10902,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10832,42 +10943,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
diff --git a/cinder/locale/zh_TW/LC_MESSAGES/cinder.po b/cinder/locale/zh_TW/LC_MESSAGES/cinder.po
index f72313b69..023c3bcb9 100644
--- a/cinder/locale/zh_TW/LC_MESSAGES/cinder.po
+++ b/cinder/locale/zh_TW/LC_MESSAGES/cinder.po
@@ -1,16 +1,18 @@
-# Chinese (Traditional) translation for cinder
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the cinder package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+# Chinese (Traditional, Taiwan) translations for cinder.
+# Copyright (C) 2014 ORGANIZATION
+# This file is distributed under the same license as the cinder project.
 #
+# Translators:
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011
 msgid ""
 msgstr ""
-"Project-Id-Version:  cinder\n"
-"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-03-29 06:10+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"
+"Project-Id-Version:  Cinder\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2014-05-18 06:13+0000\n"
+"PO-Revision-Date: 2014-05-11 20:12+0000\n"
+"Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
+"Language-Team: Chinese (Taiwan) "
+"(http://www.transifex.com/projects/p/cinder/language/zh_TW/)\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
@@ -20,12 +22,12 @@ msgstr ""
 #: cinder/context.py:63
 #, python-format
 msgid "Arguments dropped when creating context: %s"
-msgstr ""
+msgstr "建立環境定義時捨棄了引數:%s"
 
 #: cinder/context.py:107
 #, python-format
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
-msgstr ""
+msgstr "read_deleted 只能是 'no'、'yes' 或 'only' 其中之一,不能是 %r"
 
 #: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
@@ -33,12 +35,12 @@ msgstr "發生一個未知例外"
 
 #: cinder/exception.py:88
 msgid "Exception in string format operation"
-msgstr ""
+msgstr "字串格式化作業發生異常狀況"
 
 #: cinder/exception.py:107
 #, python-format
 msgid "Bad or unexpected response from the storage volume backend API: %(data)s"
-msgstr ""
+msgstr "來自儲存磁區後端 API 的回應錯誤或不符合預期:%(data)s"
 
 #: cinder/exception.py:112
 #, python-format
@@ -66,12 +68,12 @@ msgstr "使用者並沒有管理者權力"
 #: cinder/exception.py:133
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
-msgstr ""
+msgstr "原則不容許執行 %(action)s。"
 
 #: cinder/exception.py:137
 #, python-format
 msgid "Not authorized for image %(image_id)s."
-msgstr ""
+msgstr "未獲映像檔 %(image_id)s 的授權。"
 
 #: cinder/exception.py:141
 msgid "Volume driver not ready."
@@ -94,15 +96,15 @@ msgstr ""
 #: cinder/exception.py:159
 #, python-format
 msgid "Volume %(volume_id)s is still attached, detach volume first."
-msgstr ""
+msgstr "磁區 %(volume_id)s 仍處於連接狀態,請先將磁區分離。"
 
 #: cinder/exception.py:163
 msgid "Failed to load data into json format"
-msgstr ""
+msgstr "無法將資料載入成 JSON 格式"
 
 #: cinder/exception.py:167
 msgid "The results are invalid."
-msgstr ""
+msgstr "結果無效。"
 
 #: cinder/exception.py:171
 #, python-format
@@ -122,7 +124,7 @@ msgstr ""
 #: cinder/exception.py:183
 #, python-format
 msgid "Invalid content type %(content_type)s."
-msgstr ""
+msgstr "無效的內容類型 %(content_type)s。"
 
 #: cinder/exception.py:187
 #, python-format
@@ -132,7 +134,7 @@ msgstr ""
 #: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
-msgstr ""
+msgstr "%(err)s"
 
 #: cinder/exception.py:197
 #, python-format
@@ -146,12 +148,12 @@ msgstr ""
 
 #: cinder/exception.py:206
 msgid "Service is unavailable at this time."
-msgstr ""
+msgstr "此時無法使用服務。"
 
 #: cinder/exception.py:210
 #, python-format
 msgid "Image %(image_id)s is unacceptable: %(reason)s"
-msgstr ""
+msgstr "無法接受映像檔 %(image_id)s:%(reason)s"
 
 #: cinder/exception.py:214
 #, python-format
@@ -161,21 +163,21 @@ msgstr ""
 #: cinder/exception.py:218
 #, python-format
 msgid "Expected a uuid but received %(uuid)s."
-msgstr ""
+msgstr "需要 UUID,但收到 %(uuid)s。"
 
 #: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
-msgstr ""
+msgstr "找不到資源。"
 
 #: cinder/exception.py:228
 #, python-format
 msgid "Volume %(volume_id)s could not be found."
-msgstr ""
+msgstr "找不到磁區 %(volume_id)s。"
 
 #: cinder/exception.py:232
 #, python-format
 msgid "Volume %(volume_id)s has no metadata with key %(metadata_key)s."
-msgstr ""
+msgstr "磁區 %(volume_id)s 沒有索引鍵為 %(metadata_key)s 的 meta 資料。"
 
 #: cinder/exception.py:237
 #, python-format
@@ -197,24 +199,24 @@ msgstr ""
 #: cinder/exception.py:250
 #, python-format
 msgid "Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s."
-msgstr ""
+msgstr "Snapshot %(snapshot_id)s 沒有索引鍵為 %(metadata_key)s 的 meta 資料。"
 
 #: cinder/exception.py:255
 #, python-format
 msgid "Volume type %(volume_type_id)s could not be found."
-msgstr ""
+msgstr "找不到磁區類型 %(volume_type_id)s。"
 
 #: cinder/exception.py:259
 #, python-format
 msgid "Volume type with name %(volume_type_name)s could not be found."
-msgstr ""
+msgstr "找不到名稱為 %(volume_type_name)s 的磁區類型。"
 
 #: cinder/exception.py:264
 #, python-format
 msgid ""
 "Volume Type %(volume_type_id)s has no extra specs with key "
 "%(extra_specs_key)s."
-msgstr ""
+msgstr "磁區類型 %(volume_type_id)s 沒有索引鍵為 %(extra_specs_key)s 的額外規格。"
 
 #: cinder/exception.py:269
 #, python-format
@@ -226,113 +228,113 @@ msgstr ""
 #: cinder/exception.py:274
 #, python-format
 msgid "Snapshot %(snapshot_id)s could not be found."
-msgstr ""
+msgstr "找不到 Snapshot %(snapshot_id)s。"
 
 #: cinder/exception.py:278
 #, python-format
 msgid "deleting volume %(volume_name)s that has snapshot"
-msgstr ""
+msgstr "正在刪除具有 Snapshot 的磁區 %(volume_name)s"
 
 #: cinder/exception.py:282
 #, python-format
 msgid "deleting snapshot %(snapshot_name)s that has dependent volumes"
-msgstr ""
+msgstr "正在刪除具有相依磁區的 Snapshot %(snapshot_name)s"
 
 #: cinder/exception.py:287
 #, python-format
 msgid "No target id found for volume %(volume_id)s."
-msgstr ""
+msgstr "找不到磁區 %(volume_id)s 的目標 ID。"
 
 #: cinder/exception.py:291
 #, python-format
 msgid "Invalid image href %(image_href)s."
-msgstr ""
+msgstr "無效的映像檔 href %(image_href)s。"
 
 #: cinder/exception.py:295
 #, python-format
 msgid "Image %(image_id)s could not be found."
-msgstr ""
+msgstr "找不到映像檔 %(image_id)s。"
 
 #: cinder/exception.py:299
 #, python-format
 msgid "Service %(service_id)s could not be found."
-msgstr ""
+msgstr "找不到服務 %(service_id)s。"
 
 #: cinder/exception.py:303
 #, python-format
 msgid "Host %(host)s could not be found."
-msgstr ""
+msgstr "找不到主機 %(host)s。"
 
 #: cinder/exception.py:307
 #, python-format
 msgid "Scheduler Host Filter %(filter_name)s could not be found."
-msgstr ""
+msgstr "找不到「排程器主機過濾器」%(filter_name)s。"
 
 #: cinder/exception.py:311
 #, python-format
 msgid "Scheduler Host Weigher %(weigher_name)s could not be found."
-msgstr ""
+msgstr "找不到「排程器主機稱量程式」%(weigher_name)s。"
 
 #: cinder/exception.py:315
 #, python-format
 msgid "Could not find binary %(binary)s on host %(host)s."
-msgstr ""
+msgstr "在主機 %(host)s 上找不到二進位檔 %(binary)s。"
 
 #: cinder/exception.py:319
 #, python-format
 msgid "Invalid reservation expiration %(expire)s."
-msgstr ""
+msgstr "無效的預約有效期限 %(expire)s。"
 
 #: cinder/exception.py:323
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
-msgstr ""
+msgstr "變更會使下列資源的用量小於 0:%(unders)s"
 
 #: cinder/exception.py:328
 msgid "Quota could not be found"
-msgstr ""
+msgstr "找不到配額"
 
 #: cinder/exception.py:332
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
-msgstr ""
+msgstr "不明的配額資源 %(unknown)s。"
 
 #: cinder/exception.py:336
 #, python-format
 msgid "Quota for project %(project_id)s could not be found."
-msgstr ""
+msgstr "找不到專案 %(project_id)s 的配額。"
 
 #: cinder/exception.py:340
 #, python-format
 msgid "Quota class %(class_name)s could not be found."
-msgstr ""
+msgstr "找不到配額類別 %(class_name)s。"
 
 #: cinder/exception.py:344
 #, python-format
 msgid "Quota usage for project %(project_id)s could not be found."
-msgstr ""
+msgstr "找不到專案 %(project_id)s 的配額用量。"
 
 #: cinder/exception.py:348
 #, python-format
 msgid "Quota reservation %(uuid)s could not be found."
-msgstr ""
+msgstr "找不到配額預約 %(uuid)s。"
 
 #: cinder/exception.py:352
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
-msgstr ""
+msgstr "資源已超出配額:%(overs)s"
 
 #: cinder/exception.py:356
 #, python-format
 msgid "File %(file_path)s could not be found."
-msgstr ""
+msgstr "找不到檔案 %(file_path)s。"
 
 #: cinder/exception.py:365
 #, python-format
 msgid "Volume Type %(id)s already exists."
-msgstr ""
+msgstr "磁區類型 %(id)s 已存在。"
 
 #: cinder/exception.py:369
 #, python-format
@@ -347,27 +349,27 @@ msgstr ""
 #: cinder/exception.py:377
 #, python-format
 msgid "Malformed message body: %(reason)s"
-msgstr ""
+msgstr "訊息內文的格式不正確:%(reason)s"
 
 #: cinder/exception.py:381
 #, python-format
 msgid "Could not find config at %(path)s"
-msgstr ""
+msgstr "在 %(path)s 處找不到配置"
 
 #: cinder/exception.py:385
-#, fuzzy, python-format
+#, python-format
 msgid "Could not find parameter %(param)s"
-msgstr "找不到Volume %s"
+msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
-msgstr ""
+msgstr "無法從 %(path)s 載入 paste 應用程式 '%(name)s'"
 
 #: cinder/exception.py:393
 #, python-format
 msgid "No valid host was found. %(reason)s"
-msgstr ""
+msgstr "找不到有效的主機。%(reason)s"
 
 #: cinder/exception.py:402
 #, python-format
@@ -384,44 +386,44 @@ msgstr ""
 #: cinder/exception.py:415
 #, python-format
 msgid "Maximum number of volumes allowed (%(allowed)d) exceeded"
-msgstr ""
+msgstr "已超出容許的磁區數目上限 (%(allowed)d)"
 
 #: cinder/exception.py:419
 #, python-format
 msgid "Maximum number of snapshots allowed (%(allowed)d) exceeded"
-msgstr ""
+msgstr "已超出容許的 Snapshot 數目上限 (%(allowed)d)"
 
 #: cinder/exception.py:423
 #, python-format
 msgid "Detected more than one volume with name %(vol_name)s"
-msgstr ""
+msgstr "已偵測到多個名稱為 %(vol_name)s 的磁區"
 
 #: cinder/exception.py:427
 #, python-format
 msgid "Cannot create volume_type with name %(name)s and specs %(extra_specs)s"
-msgstr ""
+msgstr "無法使用名稱 %(name)s 及規格 %(extra_specs)s 來建立 volume_type"
 
 #: cinder/exception.py:432
 #, python-format
 msgid "Unknown or unsupported command %(cmd)s"
-msgstr ""
+msgstr "不明或不支援的指令 %(cmd)s"
 
 #: cinder/exception.py:436
 #, python-format
 msgid "Malformed response to command %(cmd)s: %(reason)s"
-msgstr ""
+msgstr "對指令 %(cmd)s 的回應格式不正確:%(reason)s"
 
 #: cinder/exception.py:440
 #, python-format
 msgid "Operation failed with status=%(status)s. Full dump: %(data)s"
-msgstr ""
+msgstr "作業失敗,狀態 = %(status)s。完整傾出:%(data)s"
 
 #: cinder/exception.py:444
 #, python-format
 msgid ""
 "Glance metadata cannot be updated, key %(key)s exists for volume id "
 "%(volume_id)s"
-msgstr ""
+msgstr "無法更新 Glance meta 資料,磁區 ID %(volume_id)s 已存在索引鍵 %(key)s"
 
 #: cinder/exception.py:449
 #, python-format
@@ -449,9 +451,9 @@ msgid "Failed to copy metadata to volume: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:469
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to copy image to volume: %(reason)s"
-msgstr "找不到Volume %s"
+msgstr ""
 
 #: cinder/exception.py:473
 msgid "Invalid Ceph args provided for backup rbd operation"
@@ -476,7 +478,7 @@ msgstr ""
 #: cinder/exception.py:493
 #, python-format
 msgid "Backup %(backup_id)s could not be found."
-msgstr ""
+msgstr "找不到備份 %(backup_id)s。"
 
 #: cinder/exception.py:497
 msgid "Failed to identify volume backend."
@@ -485,7 +487,7 @@ msgstr ""
 #: cinder/exception.py:501
 #, python-format
 msgid "Invalid backup: %(reason)s"
-msgstr ""
+msgstr "無效的備份:%(reason)s"
 
 #: cinder/exception.py:505
 #, python-format
@@ -605,37 +607,37 @@ msgid "Zadara Cinder Driver exception."
 msgstr ""
 
 #: cinder/exception.py:611
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to create server object for initiator %(name)s"
-msgstr "無法替 instance實例 %(instance_name)s , 建立 VDI 在SR %(sr_ref)s"
+msgstr "無法給起始器 %(name)s 建立伺服器物件"
 
 #: cinder/exception.py:615
 #, python-format
 msgid "Unable to find server object for initiator %(name)s"
-msgstr ""
+msgstr "找不到起始器 %(name)s 的伺服器物件"
 
 #: cinder/exception.py:619
 msgid "Unable to find any active VPSA controller"
-msgstr ""
+msgstr "找不到任何作用中的 VPSA 控制器"
 
 #: cinder/exception.py:623
 #, python-format
 msgid "Failed to retrieve attachments for volume %(name)s"
-msgstr ""
+msgstr "無法擷取磁區 %(name)s 的連接裝置"
 
 #: cinder/exception.py:627
 #, python-format
 msgid "Invalid attachment info for volume %(name)s: %(reason)s"
-msgstr ""
+msgstr "磁區 %(name)s 的連接裝置資訊無效:%(reason)s"
 
 #: cinder/exception.py:631
 #, python-format
 msgid "Bad HTTP response status %(status)s"
-msgstr ""
+msgstr "錯誤的 HTTP 回應狀態 %(status)s"
 
 #: cinder/exception.py:636
 msgid "Bad response from SolidFire API"
-msgstr ""
+msgstr "SolidFire API 傳回錯誤的回應"
 
 #: cinder/exception.py:640
 msgid "SolidFire Cinder Driver exception"
@@ -644,12 +646,12 @@ msgstr ""
 #: cinder/exception.py:644
 #, python-format
 msgid "Error in SolidFire API response: data=%(data)s"
-msgstr ""
+msgstr "SolidFire API 回應發生錯誤:資料 = %(data)s"
 
 #: cinder/exception.py:648
 #, python-format
 msgid "Unable to locate account %(account_name)s on Solidfire device"
-msgstr ""
+msgstr "在 SolidFire 裝置上找不到帳戶 %(account_name)s"
 
 #: cinder/exception.py:654
 #, python-format
@@ -657,27 +659,25 @@ msgid "Invalid 3PAR Domain: %(err)s"
 msgstr ""
 
 #: cinder/exception.py:659
-#, fuzzy
 msgid "Unknown NFS exception"
-msgstr "發生一個未知例外"
+msgstr "不明的 NFS 異常狀況"
 
 #: cinder/exception.py:663
 msgid "No mounted NFS shares found"
-msgstr ""
+msgstr "找不到已裝載的 NFS 共用"
 
 #: cinder/exception.py:667 cinder/exception.py:680
 #, python-format
 msgid "There is no share which can host %(volume_size)sG"
-msgstr ""
+msgstr "沒有共用可以管理 %(volume_size)sG"
 
 #: cinder/exception.py:672
-#, fuzzy
 msgid "Unknown Gluster exception"
-msgstr "發生一個未知例外"
+msgstr "不明的 Gluster 異常狀況"
 
 #: cinder/exception.py:676
 msgid "No mounted Gluster shares found"
-msgstr ""
+msgstr "找不到已裝載的 Gluster 共用"
 
 #: cinder/exception.py:684
 #, python-format
@@ -728,44 +728,44 @@ msgstr ""
 
 #: cinder/manager.py:128
 msgid "Notifying Schedulers of capabilities ..."
-msgstr ""
+msgstr "正在將功能通知傳送給排程器..."
 
 #: cinder/policy.py:30
 msgid "JSON file representing policy"
-msgstr ""
+msgstr "代表原則的 JSON 檔案"
 
 #: cinder/policy.py:33
 msgid "Rule checked when requested rule is not found"
-msgstr ""
+msgstr "找不到所要求的規則時檢查的規則"
 
-#: cinder/quota.py:105
+#: cinder/quota.py:106
 #, python-format
 msgid ""
 "Default quota for resource: %(res)s is set by the default quota flag: "
-"quota_%(res)s, it is now deprecated. Please use the the default quota "
-"class for default quota."
+"quota_%(res)s, it is now deprecated. Please use the default quota class "
+"for default quota."
 msgstr ""
 
-#: cinder/quota.py:748
+#: cinder/quota.py:749
 #, python-format
 msgid "Created reservations %s"
 msgstr ""
 
-#: cinder/quota.py:770
+#: cinder/quota.py:771
 #, python-format
 msgid "Failed to commit reservations %s"
 msgstr ""
 
-#: cinder/quota.py:790
+#: cinder/quota.py:791
 #, python-format
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:874
+#: cinder/quota.py:875
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:877
+#: cinder/quota.py:878
 msgid "Cannot register resources"
 msgstr ""
 
@@ -784,17 +784,17 @@ msgid ""
 "volumes already consumed)"
 msgstr ""
 
-#: cinder/service.py:100
+#: cinder/service.py:99
 #, python-format
 msgid "Starting %(topic)s node (version %(version_string)s)"
-msgstr ""
+msgstr "正在啟動 %(topic)s 節點(%(version_string)s 版)"
 
-#: cinder/service.py:113
+#: cinder/service.py:112
 #, python-format
 msgid "Creating RPC server for service %s"
 msgstr ""
 
-#: cinder/service.py:144
+#: cinder/service.py:145
 #, python-format
 msgid ""
 "Report interval must be less than service down time. Current config "
@@ -803,39 +803,39 @@ msgid ""
 "%(new_down_time)s"
 msgstr ""
 
-#: cinder/service.py:212
+#: cinder/service.py:213
 msgid "Service killed that has no database entry"
-msgstr ""
+msgstr "已結束沒有資料庫項目的服務"
 
-#: cinder/service.py:250
+#: cinder/service.py:251
 msgid "The service database object disappeared, Recreating it."
-msgstr ""
+msgstr "服務資料庫物件已消失,正在重建。"
 
-#: cinder/service.py:265
+#: cinder/service.py:266
 msgid "Recovered model server connection!"
-msgstr ""
+msgstr "已回復模型伺服器連線!"
 
-#: cinder/service.py:271
+#: cinder/service.py:272
 msgid "model server went away"
-msgstr ""
+msgstr "模型伺服器已斷線"
 
-#: cinder/service.py:293
+#: cinder/service.py:294
 #, python-format
 msgid ""
 "Value of config option %(name)s_workers must be integer greater than 1.  "
 "Input value ignored."
 msgstr ""
 
-#: cinder/service.py:368
+#: cinder/service.py:369
 msgid "serve() can only be called once"
-msgstr ""
+msgstr "只能呼叫 serve() 一次"
 
-#: cinder/service.py:374 cinder/openstack/common/service.py:166
+#: cinder/service.py:375 cinder/openstack/common/service.py:166
 #: cinder/openstack/common/service.py:384
 msgid "Full set of CONF:"
-msgstr ""
+msgstr "一組完整的 CONF:"
 
-#: cinder/service.py:382
+#: cinder/service.py:383
 #, python-format
 msgid "%s : FLAG SET "
 msgstr ""
@@ -852,27 +852,27 @@ msgstr ""
 
 #: cinder/utils.py:213
 msgid "Specify a password or private_key"
-msgstr ""
+msgstr "指定密碼或 private_key"
 
 #: cinder/utils.py:229
 #, python-format
 msgid "Error connecting via ssh: %s"
-msgstr ""
+msgstr "透過 SSH 進行連接時發生錯誤:%s"
 
 #: cinder/utils.py:413
 #, python-format
 msgid "Invalid backend: %s"
-msgstr ""
+msgstr "無效的後端:%s"
 
 #: cinder/utils.py:424
 #, python-format
 msgid "backend %s"
-msgstr ""
+msgstr "後端 %s"
 
 #: cinder/utils.py:699
 #, python-format
 msgid "Could not remove tmpdir: %s"
-msgstr ""
+msgstr "無法移除 tmpdir:%s"
 
 #: cinder/utils.py:760
 #, python-format
@@ -882,7 +882,7 @@ msgstr ""
 #: cinder/utils.py:782
 #, python-format
 msgid "%s is not a string or unicode"
-msgstr ""
+msgstr "%s 不是字串或 Unicode"
 
 #: cinder/utils.py:786
 #, python-format
@@ -892,33 +892,33 @@ msgstr ""
 #: cinder/utils.py:791
 #, python-format
 msgid "%(name)s has more than %(max_length)s characters."
-msgstr ""
+msgstr "%(name)s 超過 %(max_length)s 個字元。"
 
 #: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
-msgstr ""
+msgstr "找不到 cert_file:%s"
 
 #: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find ca_file : %s"
-msgstr "找不到Volume %s"
+msgstr "找不到 ca_file:%s"
 
 #: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
-msgstr ""
+msgstr "找不到 key_file:%s"
 
 #: 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 ""
+msgstr "在 SSL 模式下執行伺服器時,必須在配置檔中指定 cert_file 及 key_file 選項值"
 
 #: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
-msgstr ""
+msgstr "嘗試 30 秒鐘後仍無法連結至 %(host)s:%(port)s"
 
 #: cinder/wsgi.py:215
 #, python-format
@@ -927,15 +927,15 @@ msgstr ""
 
 #: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
-msgstr ""
+msgstr "正在停止 WSGI 伺服器。"
 
 #: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
-msgstr ""
+msgstr "WSGI 伺服器已停止。"
 
 #: cinder/wsgi.py:322
 msgid "You must implement __call__"
-msgstr ""
+msgstr "必須實作 __call__"
 
 #: cinder/api/auth.py:26
 msgid ""
@@ -951,105 +951,105 @@ msgstr ""
 
 #: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:282
 msgid "limit param must be an integer"
-msgstr ""
+msgstr "限制參數必須是整數"
 
 #: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:279
 msgid "limit param must be positive"
-msgstr ""
+msgstr "限制參數必須是正數"
 
 #: cinder/api/common.py:120
 msgid "offset param must be an integer"
-msgstr ""
+msgstr "偏移參數必須是整數"
 
 #: cinder/api/common.py:134
 msgid "offset param must be positive"
-msgstr ""
+msgstr "偏移參數必須是正數"
 
 #: cinder/api/common.py:162
 #, python-format
 msgid "marker [%s] not found"
-msgstr ""
+msgstr "找不到標記 [%s]"
 
 #: cinder/api/common.py:189
 #, python-format
 msgid "href %s does not contain version"
-msgstr ""
+msgstr "href %s 不包含版本"
 
 #: cinder/api/extensions.py:183
 msgid "Initializing extension manager."
-msgstr ""
+msgstr "正在起始設定延伸管理程式。"
 
 #: cinder/api/extensions.py:198
 #, python-format
 msgid "Loaded extension: %s"
-msgstr ""
+msgstr "已載入延伸:%s"
 
 #: cinder/api/extensions.py:236
 #, python-format
 msgid "Ext name: %s"
-msgstr ""
+msgstr "延伸名稱:%s"
 
 #: cinder/api/extensions.py:237
 #, python-format
 msgid "Ext alias: %s"
-msgstr ""
+msgstr "延伸別名:%s"
 
 #: cinder/api/extensions.py:238
 #, python-format
 msgid "Ext description: %s"
-msgstr ""
+msgstr "延伸說明:%s"
 
 #: cinder/api/extensions.py:240
 #, python-format
 msgid "Ext namespace: %s"
-msgstr ""
+msgstr "延伸名稱空間:%s"
 
 #: cinder/api/extensions.py:241
 #, python-format
 msgid "Ext updated: %s"
-msgstr ""
+msgstr "已更新延伸:%s"
 
 #: cinder/api/extensions.py:243
 #, python-format
 msgid "Exception loading extension: %s"
-msgstr ""
+msgstr "載入延伸時發生異常狀況:%s"
 
 #: cinder/api/extensions.py:257
 #, python-format
 msgid "Loading extension %s"
-msgstr ""
+msgstr "正在載入延伸 %s"
 
 #: cinder/api/extensions.py:263
 #, python-format
 msgid "Calling extension factory %s"
-msgstr ""
+msgstr "正在呼叫延伸 Factory %s"
 
 #: cinder/api/extensions.py:277
 #, python-format
 msgid "osapi_volume_extension is set to deprecated path: %s"
-msgstr ""
+msgstr "osapi_volume_extension 設為已淘汰的路徑:%s"
 
 #: cinder/api/extensions.py:279
 #, python-format
 msgid ""
 "Please set your flag or cinder.conf settings for osapi_volume_extension "
 "to: %s"
-msgstr ""
+msgstr "請將 osapi_volume_extension 的旗標或 cinder.conf 設定值設為:%s"
 
 #: cinder/api/extensions.py:288
 #, python-format
 msgid "Failed to load extension %(ext_factory)s: %(exc)s"
-msgstr ""
+msgstr "無法載入延伸 %(ext_factory)s:%(exc)s"
 
 #: cinder/api/extensions.py:357
 #, python-format
 msgid "Failed to load extension %(classpath)s: %(exc)s"
-msgstr ""
+msgstr "無法載入延伸 %(classpath)s:%(exc)s"
 
 #: cinder/api/extensions.py:382
 #, python-format
 msgid "Failed to load extension %(ext_name)s: %(exc)s"
-msgstr ""
+msgstr "無法載入延伸 %(ext_name)s:%(exc)s"
 
 #: cinder/api/sizelimit.py:25
 msgid ""
@@ -1059,66 +1059,66 @@ msgstr ""
 
 #: cinder/api/xmlutil.py:266
 msgid "element is not a child"
-msgstr ""
+msgstr "元素不是子項"
 
 #: cinder/api/xmlutil.py:463
 msgid "root element selecting a list"
-msgstr ""
+msgstr "根元素正在選取一個清單"
 
 #: cinder/api/xmlutil.py:786
 #, python-format
 msgid "Template tree mismatch; adding slave %(slavetag)s to master %(mastertag)s"
-msgstr ""
+msgstr "範本樹狀結構不符;正在將從屬 %(slavetag)s 新增至主要 %(mastertag)s"
 
 #: cinder/api/xmlutil.py:907
 msgid "subclasses must implement construct()!"
-msgstr ""
+msgstr "子類別必須實作 construct()!"
 
 #: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
-msgstr ""
+msgstr "正在使用 '%(update)r' 來更新 %(resource)s '%(id)s'"
 
 #: cinder/api/contrib/backups.py:161
 #, python-format
 msgid "show called for member %s"
-msgstr ""
+msgstr "對成員 %s 呼叫了 show"
 
 #: cinder/api/contrib/backups.py:173
 #, python-format
 msgid "delete called for member %s"
-msgstr ""
+msgstr "對成員 %s 呼叫了 delete"
 
 #: cinder/api/contrib/backups.py:176
 #, python-format
 msgid "Delete backup with id: %s"
-msgstr ""
+msgstr "刪除 ID 為 %s 的備份"
 
 #: cinder/api/contrib/backups.py:218
 #, python-format
 msgid "Creating new backup %s"
-msgstr ""
+msgstr "正在建立新的備份 %s"
 
 #: cinder/api/contrib/backups.py:228 cinder/api/contrib/backups.py:260
 #: cinder/api/contrib/volume_transfer.py:157
 #: cinder/api/contrib/volume_transfer.py:193
 msgid "Incorrect request body format"
-msgstr ""
+msgstr "要求內文的格式不正確"
 
 #: cinder/api/contrib/backups.py:234
 #, python-format
 msgid "Creating backup of volume %(volume_id)s in container %(container)s"
-msgstr ""
+msgstr "正在儲存器 %(container)s 中建立磁區 %(volume_id)s 的備份"
 
 #: cinder/api/contrib/backups.py:257
 #, python-format
 msgid "Restoring backup %(backup_id)s (%(body)s)"
-msgstr ""
+msgstr "正在還原備份 %(backup_id)s (%(body)s)"
 
 #: cinder/api/contrib/backups.py:267
 #, python-format
 msgid "Restoring backup %(backup_id)s to volume %(volume_id)s"
-msgstr ""
+msgstr "正在將備份 %(backup_id)s 還原至磁區 %(volume_id)s"
 
 #: cinder/api/contrib/backups.py:300
 #, python-format
@@ -1151,39 +1151,39 @@ msgstr ""
 
 #: cinder/api/contrib/extended_snapshot_attributes.py:60
 msgid "Snapshot not found."
-msgstr ""
+msgstr "找不到 Snapshot。"
 
 #: cinder/api/contrib/hosts.py:86 cinder/api/openstack/wsgi.py:237
 msgid "cannot understand XML"
-msgstr ""
+msgstr "無法理解 XML"
 
 #: cinder/api/contrib/hosts.py:136
 #, python-format
 msgid "Host '%s' could not be found."
-msgstr ""
+msgstr "找不到主機 '%s'。"
 
 #: cinder/api/contrib/hosts.py:165
 #, python-format
 msgid "Invalid status: '%s'"
-msgstr ""
+msgstr "無效的狀態:'%s'"
 
 #: cinder/api/contrib/hosts.py:168
 #, python-format
 msgid "Invalid update setting: '%s'"
-msgstr ""
+msgstr "無效的更新設定:'%s'"
 
 #: cinder/api/contrib/hosts.py:180
 #, python-format
 msgid "Setting host %(host)s to %(state)s."
-msgstr ""
+msgstr "正在將主機 %(host)s 設為 %(state)s。"
 
 #: cinder/api/contrib/hosts.py:206
 msgid "Describe-resource is admin only functionality"
-msgstr ""
+msgstr "Describe-resource 是管理者專用功能"
 
 #: cinder/api/contrib/hosts.py:214
 msgid "Host not found"
-msgstr ""
+msgstr "找不到主機"
 
 #: cinder/api/contrib/qos_specs_manage.py:110
 msgid "Please specify a name for QoS specs."
@@ -1220,7 +1220,7 @@ msgstr ""
 
 #: cinder/api/contrib/quotas.py:68
 msgid "Quota limit must be -1 or greater."
-msgstr ""
+msgstr "配額限制必須為 -1 以上。"
 
 #: cinder/api/contrib/quotas.py:105
 msgid "Missing required element quota_set in request body."
@@ -1233,7 +1233,7 @@ msgstr ""
 
 #: cinder/api/contrib/scheduler_hints.py:36
 msgid "Malformed scheduler_hints attribute"
-msgstr ""
+msgstr "scheduler_hints 屬性的格式不正確"
 
 #: cinder/api/contrib/services.py:91
 msgid ""
@@ -1267,19 +1267,19 @@ msgstr ""
 
 #: cinder/api/contrib/types_extra_specs.py:101
 msgid "Request body empty"
-msgstr ""
+msgstr "要求內文是空的"
 
 #: cinder/api/contrib/types_extra_specs.py:105
 #: cinder/api/v1/snapshot_metadata.py:75 cinder/api/v1/volume_metadata.py:75
 #: cinder/api/v2/snapshot_metadata.py:75 cinder/api/v2/volume_metadata.py:74
 msgid "Request body and URI mismatch"
-msgstr ""
+msgstr "要求內文與 URI 不符"
 
 #: cinder/api/contrib/types_extra_specs.py:108
 #: cinder/api/v1/snapshot_metadata.py:79 cinder/api/v1/volume_metadata.py:79
 #: cinder/api/v2/snapshot_metadata.py:79 cinder/api/v2/volume_metadata.py:78
 msgid "Request body contains too many items"
-msgstr ""
+msgstr "要求內文包含太多項目"
 
 #: cinder/api/contrib/types_extra_specs.py:152
 msgid ""
@@ -1318,7 +1318,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_actions.py:230
 msgid "No image_name was specified in request."
-msgstr ""
+msgstr "未在要求中指定 image_name。"
 
 #: cinder/api/contrib/volume_actions.py:238
 msgid "Bad value for 'force' parameter."
@@ -1328,26 +1328,38 @@ msgstr ""
 msgid "'force' is not string or bool."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:281
+#: cinder/api/contrib/volume_actions.py:283
 msgid "New volume size must be specified as an integer."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:300
+#: cinder/api/contrib/volume_actions.py:302
 msgid "Must specify readonly in request."
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:308
+#: cinder/api/contrib/volume_actions.py:310
 msgid "Bad value for 'readonly'"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:312
+#: cinder/api/contrib/volume_actions.py:314
 msgid "'readonly' not string or bool"
 msgstr ""
 
-#: cinder/api/contrib/volume_actions.py:326
+#: cinder/api/contrib/volume_actions.py:328
 msgid "New volume type must be specified."
 msgstr ""
 
+#: cinder/api/contrib/volume_actions.py:347
+msgid "Must specify bootable in request."
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:355
+msgid "Bad value for 'bootable'"
+msgstr ""
+
+#: cinder/api/contrib/volume_actions.py:359
+msgid "'bootable' not string or bool"
+msgstr ""
+
 #: cinder/api/contrib/volume_manage.py:98 cinder/api/v2/snapshots.py:174
 #: cinder/api/v2/snapshots.py:234 cinder/api/v2/volumes.py:266
 #: cinder/api/v2/volumes.py:373
@@ -1378,9 +1390,9 @@ msgid "Creating new volume transfer %s"
 msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:162
-#, fuzzy, python-format
+#, python-format
 msgid "Creating transfer of volume %s"
-msgstr "找不到Volume %s"
+msgstr ""
 
 #: cinder/api/contrib/volume_transfer.py:183
 #, python-format
@@ -1453,7 +1465,7 @@ msgstr ""
 
 #: cinder/api/contrib/volume_unmanage.py:59 cinder/api/v2/snapshots.py:190
 #: cinder/api/v2/volumes.py:170 cinder/api/v2/volumes.py:187
-#: cinder/api/v2/volumes.py:405
+#: cinder/api/v2/volumes.py:407
 msgid "Volume could not be found"
 msgstr ""
 
@@ -1463,17 +1475,17 @@ msgstr ""
 
 #: cinder/api/middleware/auth.py:112
 msgid "Invalid service catalog json."
-msgstr ""
+msgstr "無效的服務型錄 JSON。"
 
 #: cinder/api/middleware/fault.py:44
 #, python-format
 msgid "Caught error: %s"
-msgstr ""
+msgstr "已捕捉到錯誤:%s"
 
 #: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:978
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
-msgstr ""
+msgstr "%(url)s 傳回了 HTTP %(status)d"
 
 #: cinder/api/middleware/fault.py:69
 #, python-format
@@ -1483,28 +1495,28 @@ msgstr ""
 #: cinder/api/middleware/sizelimit.py:55 cinder/api/middleware/sizelimit.py:64
 #: cinder/api/middleware/sizelimit.py:78
 msgid "Request is too large."
-msgstr ""
+msgstr "要求太大。"
 
 #: cinder/api/openstack/__init__.py:69
 msgid "Must specify an ExtensionManager class"
-msgstr ""
+msgstr "必須指定 ExtensionManager 類別"
 
 #: cinder/api/openstack/__init__.py:80
 #, python-format
 msgid "Extended resource: %s"
-msgstr ""
+msgstr "已延伸資源:%s"
 
 #: cinder/api/openstack/__init__.py:104
 #, python-format
 msgid ""
 "Extension %(ext_name)s: Cannot extend resource %(collection)s: No such "
 "resource"
-msgstr ""
+msgstr "延伸 %(ext_name)s:無法延伸資源 %(collection)s:沒有這樣的資源"
 
 #: cinder/api/openstack/__init__.py:110
 #, python-format
 msgid "Extension %(ext_name)s extending resource: %(collection)s"
-msgstr ""
+msgstr "延伸 %(ext_name)s:正在延伸資源:%(collection)s"
 
 #: cinder/api/openstack/__init__.py:126
 msgid ""
@@ -1520,43 +1532,43 @@ msgstr ""
 
 #: cinder/api/openstack/wsgi.py:212 cinder/api/openstack/wsgi.py:628
 msgid "cannot understand JSON"
-msgstr ""
+msgstr "無法理解 JSON"
 
 #: cinder/api/openstack/wsgi.py:633
 msgid "too many body keys"
-msgstr ""
+msgstr "主體金鑰太多"
 
 #: cinder/api/openstack/wsgi.py:671
 #, python-format
 msgid "Exception handling resource: %s"
-msgstr ""
+msgstr "處理資源時發生異常狀況:%s"
 
 #: cinder/api/openstack/wsgi.py:676
 #, python-format
 msgid "Fault thrown: %s"
-msgstr ""
+msgstr "已擲出錯誤:%s"
 
 #: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "HTTP exception thrown: %s"
-msgstr ""
+msgstr "已擲出 HTTP 異常狀況:%s"
 
 #: cinder/api/openstack/wsgi.py:787
 msgid "Empty body provided in request"
-msgstr ""
+msgstr "要求中所提供主體是空的"
 
 #: cinder/api/openstack/wsgi.py:793
 msgid "Unrecognized Content-Type provided in request"
-msgstr ""
+msgstr "無法辨識要求中所提供的內容類型"
 
 #: cinder/api/openstack/wsgi.py:797
 msgid "No Content-Type provided in request"
-msgstr ""
+msgstr "要求中未提供內容類型"
 
 #: cinder/api/openstack/wsgi.py:908
 #, python-format
 msgid "There is no such action: %s"
-msgstr ""
+msgstr "沒有這樣的動作:%s"
 
 #: cinder/api/openstack/wsgi.py:911 cinder/api/openstack/wsgi.py:924
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
@@ -1568,20 +1580,20 @@ msgstr ""
 #: cinder/api/v2/volume_metadata.py:52 cinder/api/v2/volume_metadata.py:70
 #: cinder/api/v2/volume_metadata.py:95 cinder/api/v2/volume_metadata.py:120
 msgid "Malformed request body"
-msgstr ""
+msgstr "要求內文的格式不正確"
 
 #: cinder/api/openstack/wsgi.py:921
 msgid "Unsupported Content-Type"
-msgstr ""
+msgstr "不支援的內容類型"
 
 #: cinder/api/openstack/wsgi.py:933
 msgid "Malformed request url"
-msgstr ""
+msgstr "要求 URL 的格式不正確"
 
 #: cinder/api/openstack/wsgi.py:981
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
-msgstr ""
+msgstr "%(url)s 傳回了錯誤:%(e)s"
 
 #: cinder/api/openstack/volume/__init__.py:25
 msgid ""
@@ -1600,18 +1612,18 @@ msgstr ""
 msgid ""
 "Only %(value)s %(verb)s request(s) can be made to %(uri)s every "
 "%(unit_string)s."
-msgstr ""
+msgstr "只能每隔 %(unit_string)s 向 %(uri)s 提出 %(value)s 個 %(verb)s 要求。"
 
 #: cinder/api/v1/limits.py:264 cinder/api/v2/limits.py:261
 msgid "This request was rate-limited."
-msgstr ""
+msgstr "此要求存在頻率限制。"
 
 #: cinder/api/v1/snapshot_metadata.py:37 cinder/api/v1/snapshot_metadata.py:117
 #: cinder/api/v1/snapshot_metadata.py:156 cinder/api/v2/snapshot_metadata.py:37
 #: cinder/api/v2/snapshot_metadata.py:117
 #: cinder/api/v2/snapshot_metadata.py:156
 msgid "snapshot does not exist"
-msgstr ""
+msgstr "Snapshot 不存在"
 
 #: cinder/api/v1/snapshot_metadata.py:139
 #: cinder/api/v1/snapshot_metadata.py:149 cinder/api/v1/volume_metadata.py:139
@@ -1619,12 +1631,12 @@ msgstr ""
 #: cinder/api/v2/snapshot_metadata.py:149 cinder/api/v2/volume_metadata.py:138
 #: cinder/api/v2/volume_metadata.py:148
 msgid "Metadata item was not found"
-msgstr ""
+msgstr "找不到 meta 資料項目"
 
 #: cinder/api/v1/snapshots.py:119 cinder/api/v2/snapshots.py:120
 #, python-format
 msgid "Delete snapshot with id: %s"
-msgstr ""
+msgstr "刪除 ID 為 %s 的 Snapshot"
 
 #: cinder/api/v1/snapshots.py:173 cinder/api/v2/snapshots.py:184
 msgid "'volume_id' must be specified"
@@ -1633,33 +1645,33 @@ msgstr ""
 #: cinder/api/v1/snapshots.py:182 cinder/api/v2/snapshots.py:193
 #, python-format
 msgid "Create snapshot from volume %s"
-msgstr ""
+msgstr "從磁區 %s 建立 Snapshot"
 
 #: cinder/api/v1/snapshots.py:186 cinder/api/v2/snapshots.py:202
 #, python-format
 msgid "Invalid value '%s' for force. "
-msgstr ""
+msgstr "force 的值 '%s' 無效。"
 
 #: cinder/api/v1/volume_metadata.py:37 cinder/api/v1/volume_metadata.py:117
 #: cinder/api/v1/volume_metadata.py:156 cinder/api/v2/volume_metadata.py:36
 #: cinder/api/v2/volume_metadata.py:116 cinder/api/v2/volume_metadata.py:155
 msgid "volume does not exist"
-msgstr ""
+msgstr "磁區不存在"
 
 #: cinder/api/v1/volumes.py:114
 #, python-format
 msgid "vol=%s"
-msgstr ""
+msgstr "磁區 = %s"
 
 #: cinder/api/v1/volumes.py:293 cinder/api/v2/volumes.py:181
 #, python-format
 msgid "Delete volume with id: %s"
-msgstr ""
+msgstr "刪除 ID 為 %s 的磁區"
 
 #: cinder/api/v1/volumes.py:347 cinder/api/v1/volumes.py:351
 #: cinder/api/v2/volumes.py:251 cinder/api/v2/volumes.py:255
 msgid "Invalid imageRef provided."
-msgstr ""
+msgstr "提供的 imageRef 無效。"
 
 #: cinder/api/v1/volumes.py:391 cinder/api/v2/volumes.py:308
 #, python-format
@@ -1674,12 +1686,12 @@ msgstr ""
 #: cinder/api/v1/volumes.py:415 cinder/api/v2/volumes.py:331
 #, python-format
 msgid "Create volume of %s GB"
-msgstr ""
+msgstr "建立 %s GB 的磁區"
 
 #: cinder/api/v1/volumes.py:504
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
-msgstr ""
+msgstr "正在將選項 '%(bad_options)s' 從查詢中移除"
 
 #: cinder/api/v2/snapshots.py:111 cinder/api/v2/snapshots.py:126
 #: cinder/api/v2/snapshots.py:267
@@ -1699,53 +1711,49 @@ msgstr ""
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:431
+#: cinder/api/v2/volumes.py:433
 #, python-format
 msgid "Removing options '%s' from query"
-msgstr ""
+msgstr "正在將選項 '%s' 從查詢中移除"
 
 #: cinder/backup/api.py:66
-#, fuzzy
 msgid "Backup status must be available or error"
-msgstr "Volume 狀態需要可被使用"
+msgstr "備份狀態必須為可用或者錯誤"
 
-#: cinder/backup/api.py:115
-#, fuzzy
+#: cinder/backup/api.py:117
 msgid "Volume to be backed up must be available"
-msgstr "Volume 狀態需要可被使用"
+msgstr "要備份的磁區必須可用"
 
-#: cinder/backup/api.py:150
-#, fuzzy
+#: cinder/backup/api.py:152
 msgid "Backup status must be available"
-msgstr "Volume 狀態需要可被使用"
+msgstr "備份狀態必須為可用"
 
-#: cinder/backup/api.py:155
+#: cinder/backup/api.py:157
 msgid "Backup to be restored has invalid size"
-msgstr ""
+msgstr "要還原的備份大小無效"
 
-#: cinder/backup/api.py:164
+#: cinder/backup/api.py:166
 #, python-format
 msgid "Creating volume of %(size)s GB for restore of backup %(backup_id)s"
-msgstr ""
+msgstr "正在建立大小為 %(size)s GB 的磁區,用於還原備份 %(backup_id)s"
 
-#: cinder/backup/api.py:180
-#, fuzzy
+#: cinder/backup/api.py:182
 msgid "Volume to be restored to must be available"
-msgstr "Volume 狀態需要可被使用"
+msgstr "要還原至的磁區必須可用"
 
-#: cinder/backup/api.py:186
+#: cinder/backup/api.py:188
 #, python-format
 msgid ""
 "volume size %(volume_size)d is too small to restore backup of size "
 "%(size)d."
-msgstr ""
+msgstr "磁區大小 %(volume_size)d 太小,無法還原大小為 %(size)d 的備份。"
 
-#: cinder/backup/api.py:191
+#: cinder/backup/api.py:193
 #, python-format
 msgid "Overwriting volume %(volume_id)s with restore of backup %(backup_id)s"
-msgstr ""
+msgstr "正在透過還原備份 %(backup_id)s 來改寫磁區 %(volume_id)s"
 
-#: cinder/backup/api.py:225
+#: cinder/backup/api.py:227
 #, python-format
 msgid "Backup status must be available and not %s."
 msgstr ""
@@ -2027,7 +2035,7 @@ msgstr ""
 msgid "Import record id %s metadata from driver finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:827
+#: cinder/backup/drivers/ceph.py:127 cinder/tests/test_backup_ceph.py:823
 #, python-format
 msgid "Metadata backup object '%s' already exists"
 msgstr ""
@@ -2092,7 +2100,7 @@ msgstr ""
 msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377 cinder/backup/drivers/ceph.py:661
+#: cinder/backup/drivers/ceph.py:377
 #, python-format
 msgid "Deleting backup snapshot='%s'"
 msgstr ""
@@ -2103,243 +2111,302 @@ msgstr ""
 
 #: cinder/backup/drivers/ceph.py:416
 #, python-format
-msgid "Trying diff format name format basename='%s'"
+msgid ""
+"Trying diff format basename='%(basename)s' for backup base image of "
+"volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:424
+#: cinder/backup/drivers/ceph.py:425
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:432
+#: cinder/backup/drivers/ceph.py:433
 #, python-format
-msgid "Base image still has %s snapshots so skipping base image delete"
+msgid ""
+"Backup base image of volume %(volume)s still has %(snapshots)s snapshots "
+"so skipping base image delete."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:437
+#: cinder/backup/drivers/ceph.py:440
 #, python-format
-msgid "Deleting base image='%s'"
+msgid "Deleting backup base image='%(basename)s' of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:444
+#: cinder/backup/drivers/ceph.py:449
 #, python-format
-msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid ""
+"Backup image of volume %(volume)s is busy, retrying %(retries)s more "
+"time(s) in %(delay)ss."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:449
-msgid "Max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:457
+#, python-format
+msgid ""
+"Max retries reached deleting backup %(basename)s image of volume "
+"%(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:452
+#: cinder/backup/drivers/ceph.py:463
 #, python-format
-msgid "Base backup image='%s' deleted)"
+msgid "Base backup image='%(basename)s' of volume %(volume)s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:462
+#: cinder/backup/drivers/ceph.py:474
 #, python-format
-msgid "Deleting source snapshot '%s'"
+msgid "Deleting source volume snapshot '%(snapshot)s' for backup %(basename)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:508
+#: cinder/backup/drivers/ceph.py:485
+#, python-format
+msgid "Piping cmd1='%s' into..."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:486
+#, python-format
+msgid "cmd2='%s'"
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:492
+#, python-format
+msgid "Pipe1 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:506
+#, python-format
+msgid "Pipe2 failed - %s "
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:522
 #, python-format
 msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:536
+#: cinder/backup/drivers/ceph.py:550
 #, python-format
 msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:546
+#: cinder/backup/drivers/ceph.py:560
 #, python-format
 msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:551
+#: cinder/backup/drivers/ceph.py:565
 #, python-format
 msgid "Diff format image '%s' not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:586
+#: cinder/backup/drivers/ceph.py:600
 #, python-format
-msgid "Using --from-snap '%s'"
+msgid "Using --from-snap '%(snap)s' for incremental backup of volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:601
+#: cinder/backup/drivers/ceph.py:617
 #, python-format
-msgid "Source snapshot '%s' is stale so deleting"
+msgid "Source snapshot '%(snapshot)s' of volume %(volume)s is stale so deleting."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:613
+#: cinder/backup/drivers/ceph.py:630
 #, python-format
 msgid ""
 "Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:624
+#: cinder/backup/drivers/ceph.py:641
 #, python-format
 msgid "Creating backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:644
+#: cinder/backup/drivers/ceph.py:661
 #, python-format
 msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:653
+#: cinder/backup/drivers/ceph.py:670
 msgid "Differential backup transfer failed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:683
+#: cinder/backup/drivers/ceph.py:678
+#, python-format
+msgid ""
+"Deleting diff backup snapshot='%(snapshot)s' of source "
+"volume='%(volume)s'."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:702
 #, python-format
-msgid "Creating base image='%s'"
+msgid "Creating backup base image='%(name)s' for volume %(volume)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:692
-msgid "Copying data"
+#: cinder/backup/drivers/ceph.py:713
+#, python-format
+msgid "Copying data from volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:753
+#: cinder/backup/drivers/ceph.py:774
 #, python-format
 msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:756
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
 msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:763
+#: cinder/backup/drivers/ceph.py:784
 #, python-format
 msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:767
+#: cinder/backup/drivers/ceph.py:788
 #, python-format
 msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:772
+#: cinder/backup/drivers/ceph.py:793
 #, python-format
 msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:793
+#: cinder/backup/drivers/ceph.py:814
 msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:817
+#: cinder/backup/drivers/ceph.py:829
+#, python-format
+msgid "No metadata to backup for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:833
+#, python-format
+msgid "Backing up metadata for volume %s."
+msgstr ""
+
+#: cinder/backup/drivers/ceph.py:840
 #, python-format
 msgid "Failed to backup volume metadata - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:832
+#: cinder/backup/drivers/ceph.py:855
 #, python-format
-msgid "Starting backup of volume='%s'"
+msgid "Starting backup of volume='%s'."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:845
-msgid "Forcing full backup"
+#: cinder/backup/drivers/ceph.py:868
+#, python-format
+msgid "Forcing full backup of volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:865
+#: cinder/backup/drivers/ceph.py:888
 #, python-format
-msgid "Backup '%s' finished."
+msgid "Backup '%(backup_id)s' of volume %(volume_id)s finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:924
+#: cinder/backup/drivers/ceph.py:948
 msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:936
+#: cinder/backup/drivers/ceph.py:960
 #, python-format
 msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:948
+#: cinder/backup/drivers/ceph.py:972
 msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
+#: cinder/backup/drivers/ceph.py:983
 #, python-format
 msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1008
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
 msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1045
-msgid "Destination volume is same as backup source volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:1069
+#, python-format
+msgid "Destination volume is same as backup source volume %s - forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1056
+#: cinder/backup/drivers/ceph.py:1080
 msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1061
+#: cinder/backup/drivers/ceph.py:1085
 #, python-format
-msgid "No restore point found for backup='%s', forcing full copy"
+msgid ""
+"No restore point found for backup='%(backup)s' of volume %(volume)s - "
+"forcing full copy."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1092
-msgid "Forcing full restore"
+#: cinder/backup/drivers/ceph.py:1118
+#, python-format
+msgid "Forcing full restore to volume %s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1112
-msgid "Volume has no backed up metadata"
+#: cinder/backup/drivers/ceph.py:1139
+#, python-format
+msgid "Volume %s has no backed up metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1114 cinder/backup/drivers/swift.py:457
-#: cinder/tests/test_backup_ceph.py:816
+#: cinder/backup/drivers/ceph.py:1142 cinder/backup/drivers/swift.py:457
+#: cinder/tests/test_backup_ceph.py:812
 msgid "Metadata restore failed due to incompatible version"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1124
+#: cinder/backup/drivers/ceph.py:1152
 #, python-format
 msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1135
-msgid "Volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1163
+msgid ""
+"Restore target I/O object does not support fileno() - skipping call to "
+"fsync()."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1142
-msgid "Restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1170
+#, python-format
+msgid "Restore to volume %s finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1144
+#: cinder/backup/drivers/ceph.py:1173
 #, python-format
-msgid "Restore finished with error - %s"
+msgid "Restore to volume %(volume)s finished with error - %(error)s."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1150
+#: cinder/backup/drivers/ceph.py:1179
 #, python-format
 msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1156
+#: cinder/backup/drivers/ceph.py:1185
+#, python-format
 msgid ""
-"RBD image not found but continuing anyway so that we can attempt to "
-"delete metadata backup and db entry can be removed"
+"RBD image for backup %(backup)s of volume %(volume)s not found. Deleting "
+"backup metadata."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1166
+#: cinder/backup/drivers/ceph.py:1195
 #, python-format
-msgid "Delete '%s' finished with warning"
+msgid ""
+"Delete of backup '%(backup)s' for volume '%(volume)s' finished with "
+"warning."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1168
+#: cinder/backup/drivers/ceph.py:1199
 #, python-format
-msgid "Delete '%s' finished"
+msgid "Delete of backup '%(backup)s' for volume '%(volume)s' finished."
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:105
 #, python-format
 msgid "unsupported compression algorithm: %s"
-msgstr ""
+msgstr "不支援的壓縮演算法:%s"
 
 #: cinder/backup/drivers/swift.py:122
 #, python-format
@@ -2349,24 +2416,24 @@ msgstr ""
 #: cinder/backup/drivers/swift.py:140
 #, python-format
 msgid "_create_container started, container: %(container)s,backup: %(backup_id)s"
-msgstr ""
+msgstr "_create_container 已開始,儲存器:%(container)s,備份:%(backup_id)s"
 
 #: cinder/backup/drivers/swift.py:159
 #, python-format
 msgid "_generate_swift_object_name_prefix: %s"
-msgstr ""
+msgstr "_generate_swift_object_name_prefix:%s"
 
 #: cinder/backup/drivers/swift.py:168
 #, python-format
 msgid "generated object list: %s"
-msgstr ""
+msgstr "已產生物件清單:%s"
 
 #: cinder/backup/drivers/swift.py:179
 #, python-format
 msgid ""
 "_write_metadata started, container name: %(container)s, metadata "
 "filename: %(filename)s"
-msgstr ""
+msgstr "_write_metadata 已開始,儲存器名稱:%(container)s,meta 資料檔名:%(filename)s"
 
 #: cinder/backup/drivers/swift.py:197
 #, python-format
@@ -2375,27 +2442,29 @@ msgid ""
 "[%(etag)s] is not the same as MD5 of metadata file sent to swift "
 "[%(md5)s]"
 msgstr ""
+"將 meta 資料檔寫入 Swift 時發生錯誤,Swift 中 meta 資料檔的 MD5 [%(etag)s],與傳送至 Swift 的 "
+"meta 資料檔 MD5 [%(md5)s] 不同"
 
 #: cinder/backup/drivers/swift.py:202
 msgid "_write_metadata finished"
-msgstr ""
+msgstr "_write_metadata 已完成"
 
 #: cinder/backup/drivers/swift.py:207
 #, python-format
 msgid ""
 "_read_metadata started, container name: %(container)s, metadata filename:"
 " %(filename)s"
-msgstr ""
+msgstr "_read_metadata 已開始,儲存器名稱:%(container)s,meta 資料檔名:%(filename)s"
 
 #: cinder/backup/drivers/swift.py:212
 #, python-format
 msgid "_read_metadata finished (%s)"
-msgstr ""
+msgstr "_read_metadata 已完成 (%s)"
 
 #: cinder/backup/drivers/swift.py:222
-#, fuzzy, python-format
+#, python-format
 msgid "volume size %d is invalid."
-msgstr "無效的Keypair"
+msgstr "磁區大小 %d 無效。"
 
 #: cinder/backup/drivers/swift.py:236
 #, python-format
@@ -2404,10 +2473,12 @@ msgid ""
 "%(volume_size_bytes)d, swift object names prefix %(object_prefix)s, "
 "availability zone: %(availability_zone)s"
 msgstr ""
+"正在開始將磁區:%(volume_id)s 備份到 Swift,磁區大小:%(volume_size_bytes)d,Swift 物件名稱字首 "
+"%(object_prefix)s,可用性區域:%(availability_zone)s"
 
 #: cinder/backup/drivers/swift.py:260
 msgid "reading chunk of data from volume"
-msgstr ""
+msgstr "正在從磁區讀取資料區塊"
 
 #: cinder/backup/drivers/swift.py:267
 #, python-format
@@ -2415,40 +2486,42 @@ msgid ""
 "compressed %(data_size_bytes)d bytes of data to %(comp_size_bytes)d bytes"
 " using %(algorithm)s"
 msgstr ""
+"已使用 %(algorithm)s 將 %(data_size_bytes)d 個位元組的資料壓縮為 %(comp_size_bytes)d "
+"個位元組"
 
 #: cinder/backup/drivers/swift.py:276
 msgid "not compressing data"
-msgstr ""
+msgstr "沒有在壓縮資料"
 
 #: cinder/backup/drivers/swift.py:280
 msgid "About to put_object"
-msgstr ""
+msgstr "將要執行 put_object 作業"
 
 #: cinder/backup/drivers/swift.py:286
 #, python-format
 msgid "swift MD5 for %(object_name)s: %(etag)s"
-msgstr ""
+msgstr "%(object_name)s 的 Swift MD5:%(etag)s"
 
 #: cinder/backup/drivers/swift.py:290
 #, python-format
 msgid "backup MD5 for %(object_name)s: %(md5)s"
-msgstr ""
+msgstr "%(object_name)s 的備份 MD5:%(md5)s"
 
 #: cinder/backup/drivers/swift.py:293
 #, python-format
 msgid ""
 "error writing object to swift, MD5 of object in swift %(etag)s is not the"
 " same as MD5 of object sent to swift %(md5)s"
-msgstr ""
+msgstr "將物件寫入 Swift 時發生錯誤,Swift 中物件的 MD5 %(etag)s,與傳送至 Swift 的物件 MD5 %(md5)s 不同"
 
 #: cinder/backup/drivers/swift.py:301
 msgid "Calling eventlet.sleep(0)"
-msgstr ""
+msgstr "正在呼叫 eventlet.sleep(0)"
 
 #: cinder/backup/drivers/swift.py:319
 #, python-format
 msgid "backup %s finished."
-msgstr ""
+msgstr "備份 %s 已完成。"
 
 #: cinder/backup/drivers/swift.py:352
 #, python-format
@@ -2458,18 +2531,18 @@ msgstr ""
 #: cinder/backup/drivers/swift.py:362
 #, python-format
 msgid "v1 swift volume backup restore of %s started"
-msgstr ""
+msgstr "對 %s 進行第 1 版 Swift 磁區備份還原已開始"
 
 #: cinder/backup/drivers/swift.py:367
 #, python-format
 msgid "metadata_object_names = %s"
-msgstr ""
+msgstr "metadata_object_names = %s"
 
 #: cinder/backup/drivers/swift.py:373
 msgid ""
 "restore_backup aborted, actual swift object list in swift does not match "
 "object list stored in metadata"
-msgstr ""
+msgstr "restore_backup 已中止,Swift 中的實際 Swift 物件清單,與 meta 資料中所儲存的物件清單不符"
 
 #: cinder/backup/drivers/swift.py:379
 #, python-format
@@ -2477,16 +2550,18 @@ msgid ""
 "restoring object from swift. backup: %(backup_id)s, container: "
 "%(container)s, swift object name: %(object_name)s, volume: %(volume_id)s"
 msgstr ""
+"正在從 Swift 還原物件。備份:%(backup_id)s,儲存器:%(container)s,Swift "
+"物件名稱:%(object_name)s,磁區:%(volume_id)s"
 
 #: cinder/backup/drivers/swift.py:395
 #, python-format
 msgid "decompressing data using %s algorithm"
-msgstr ""
+msgstr "正在使用 %s 演算法來解壓縮資料"
 
 #: cinder/backup/drivers/swift.py:418
 #, python-format
 msgid "v1 swift volume backup restore of %s finished"
-msgstr ""
+msgstr "對 %s 進行第 1 版 Swift 磁區備份還原已完成"
 
 #: cinder/backup/drivers/swift.py:426
 #, python-format
@@ -2494,40 +2569,42 @@ msgid ""
 "starting restore of backup %(object_prefix)s from swift container: "
 "%(container)s, to volume %(volume_id)s, backup: %(backup_id)s"
 msgstr ""
+"正在開始將備份 %(object_prefix)s 從 Swift 儲存器:%(container)s,還原至磁區 "
+"%(volume_id)s,備份:%(backup_id)s"
 
 #: cinder/backup/drivers/swift.py:440
 #, python-format
 msgid "Restoring swift backup version %s"
-msgstr ""
+msgstr "正在還原 Swift 備份版本 %s"
 
 #: cinder/backup/drivers/swift.py:445
 #, python-format
 msgid "No support to restore swift backup version %s"
-msgstr ""
+msgstr "不支援還原 Swift 備份版本 %s"
 
 #: cinder/backup/drivers/swift.py:461
 #, python-format
 msgid "restore %(backup_id)s to %(volume_id)s finished."
-msgstr ""
+msgstr "將 %(backup_id)s 還原至 %(volume_id)s 已完成。"
 
 #: cinder/backup/drivers/swift.py:475
 msgid "swift error while listing objects, continuing with delete"
-msgstr ""
+msgstr "列出物件時發生 Swift 錯誤,將繼續刪除"
 
 #: cinder/backup/drivers/swift.py:484
 #, python-format
 msgid "swift error while deleting object %s, continuing with delete"
-msgstr ""
+msgstr "刪除物件 %s 時發生 Swift 錯誤,將繼續刪除"
 
 #: cinder/backup/drivers/swift.py:487
 #, python-format
 msgid "deleted swift object: %(swift_object_name)s in container: %(container)s"
-msgstr ""
+msgstr "已刪除儲存器:%(container)s 中的 Swift 物件:%(swift_object_name)s"
 
 #: cinder/backup/drivers/swift.py:497
 #, python-format
 msgid "delete %s finished"
-msgstr ""
+msgstr "刪除 %s 已完成"
 
 #: cinder/backup/drivers/tsm.py:78
 #, python-format
@@ -2716,17 +2793,17 @@ msgstr ""
 #: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
-msgstr ""
+msgstr "無法給磁區 %(volume_id)s 建立 iSCSI 目標。"
 
 #: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
-msgstr ""
+msgstr "無法移除磁區 %(volume_id)s 的 iSCSI 目標。"
 
 #: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
-msgstr ""
+msgstr "無法給磁區 %(volume_id)s 連接 iSCSI 目標。"
 
 #: cinder/brick/exception.py:120
 #, python-format
@@ -2762,12 +2839,12 @@ msgstr ""
 
 #: cinder/brick/initiator/connector.py:609
 msgid "We are unable to locate any Fibre Channel devices"
-msgstr ""
+msgstr "我們找不到任何「光纖通道」裝置"
 
 #: cinder/brick/initiator/connector.py:619
 #, python-format
 msgid "Looking for Fibre Channel dev %(device)s"
-msgstr ""
+msgstr "正在尋找「光纖通道」裝置 %(device)s"
 
 #: cinder/brick/initiator/connector.py:629
 msgid "Fibre Channel volume device not found."
@@ -2786,7 +2863,7 @@ msgstr ""
 #: cinder/brick/initiator/connector.py:658
 #, python-format
 msgid "Multipath device discovered %(device)s"
-msgstr ""
+msgstr "探索到多路徑裝置 %(device)s"
 
 #: cinder/brick/initiator/connector.py:776
 #, python-format
@@ -2825,7 +2902,7 @@ msgstr ""
 
 #: cinder/brick/initiator/linuxfc.py:50 cinder/brick/initiator/linuxfc.py:56
 msgid "systool is not installed"
-msgstr ""
+msgstr "未安裝 systool"
 
 #: cinder/brick/initiator/linuxscsi.py:99
 #: cinder/brick/initiator/linuxscsi.py:107
@@ -2858,7 +2935,7 @@ msgstr ""
 #: cinder/brick/iscsi/iscsi.py:172
 #, python-format
 msgid "Creating iscsi_target for: %s"
-msgstr ""
+msgstr "正在給 %s 建立 iscsi_target"
 
 #: cinder/brick/iscsi/iscsi.py:179
 #, python-format
@@ -2867,70 +2944,74 @@ msgid ""
 "content: %(vc)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:367
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:211 cinder/brick/iscsi/iscsi.py:391
+#, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
-msgstr "找不到Volume %s"
+msgstr ""
 
 #: cinder/brick/iscsi/iscsi.py:222
 #, 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 ""
+msgstr "無法給磁區 ID %(vol_id)s 建立 iSCSI 目標。請確保 tgtd 配置檔包含 'include %(volumes_dir)s/*'"
 
 #: cinder/brick/iscsi/iscsi.py:252
 #, python-format
 msgid "Removing iscsi_target for: %s"
-msgstr ""
+msgstr "正在移除 %s 的 iscsi_target"
 
 #: cinder/brick/iscsi/iscsi.py:256
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:274
-#, fuzzy, python-format
+#: cinder/brick/iscsi/iscsi.py:274 cinder/brick/iscsi/iscsi.py:298
+#, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
-msgstr "找不到Volume %s"
+msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:292 cinder/brick/iscsi/iscsi.py:546
-msgid "valid iqn needed for show_target"
+#: cinder/brick/iscsi/iscsi.py:291
+msgid "Silent failure of target removal detected, retry...."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:374
+#: cinder/brick/iscsi/iscsi.py:316 cinder/brick/iscsi/iscsi.py:570
+msgid "valid iqn needed for show_target"
+msgstr "show_target 需要有效的 IQN"
+
+#: cinder/brick/iscsi/iscsi.py:398
 #, python-format
 msgid "Removing iscsi_target for volume: %s"
-msgstr ""
+msgstr "正在移除磁區 %s 的 iscsi_target"
 
-#: cinder/brick/iscsi/iscsi.py:468
+#: cinder/brick/iscsi/iscsi.py:492
 msgid "cinder-rtstool is not installed correctly"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:488
+#: cinder/brick/iscsi/iscsi.py:512
 #, python-format
 msgid "Creating iscsi_target for volume: %s"
-msgstr ""
+msgstr "正在給磁區 %s 建立 iscsi_target"
 
-#: cinder/brick/iscsi/iscsi.py:512 cinder/brick/iscsi/iscsi.py:521
+#: cinder/brick/iscsi/iscsi.py:536 cinder/brick/iscsi/iscsi.py:545
 #, python-format
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:528
+#: cinder/brick/iscsi/iscsi.py:552
 #, python-format
 msgid "Removing iscsi_target: %s"
-msgstr ""
+msgstr "正在移除 iscsi_target:%s"
 
-#: cinder/brick/iscsi/iscsi.py:538
+#: cinder/brick/iscsi/iscsi.py:562
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:567
+#: cinder/brick/iscsi/iscsi.py:591
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
-msgstr ""
+msgstr "無法將起始器 IQN %s 新增至目標"
 
 #: cinder/brick/local_dev/lvm.py:75
 msgid "Error creating Volume Group"
@@ -2961,18 +3042,18 @@ msgid "StdErr  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:82
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to locate Volume Group %s"
-msgstr "找不到Volume %s"
+msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:157
 msgid "Error querying thin pool about data_percent"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:370
-#, fuzzy, python-format
+#, python-format
 msgid "Unable to find VG: %s"
-msgstr "無法卸載 Volume %s"
+msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:420
 msgid ""
@@ -3052,82 +3133,81 @@ msgstr ""
 msgid "NFS mount failed for share %(sh)s.Error - %(error)s"
 msgstr ""
 
-#: cinder/common/config.py:120
+#: cinder/common/config.py:119
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:123
+#: cinder/common/config.py:122
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
 #: cinder/common/sqlalchemyutils.py:66
 #: cinder/openstack/common/db/sqlalchemy/utils.py:72
 msgid "Id not in sort_keys; is sort_keys unique?"
-msgstr ""
+msgstr "ID 不在 sort_keys 中;sort_keys 是唯一的嗎?"
 
 #: cinder/common/sqlalchemyutils.py:114
 #: cinder/openstack/common/db/sqlalchemy/utils.py:120
 msgid "Unknown sort direction, must be 'desc' or 'asc'"
-msgstr ""
+msgstr "不明的排序方向,必須為 'desc' 或 'asc'"
 
-#: cinder/compute/nova.py:97
+#: cinder/compute/nova.py:98
 #, python-format
 msgid "Novaclient connection created using URL: %s"
 msgstr ""
 
 #: cinder/db/sqlalchemy/api.py:65
 msgid "Use of empty request context is deprecated"
-msgstr ""
+msgstr "已淘汰使用空的要求環境定義"
 
 #: cinder/db/sqlalchemy/api.py:192
 #, python-format
 msgid "Unrecognized read_deleted value '%s'"
-msgstr ""
+msgstr "無法辨識 read_deleted 值 '%s'"
 
-#: cinder/db/sqlalchemy/api.py:845
+#: cinder/db/sqlalchemy/api.py:800
 #, python-format
 msgid "Change will make usage less than 0 for the following resources: %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1274
+#: cinder/db/sqlalchemy/api.py:1214
 msgid "'migration_status' column could not be found."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1284
+#: cinder/db/sqlalchemy/api.py:1224
 msgid "'metadata' filter value is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1294
+#: cinder/db/sqlalchemy/api.py:1234
 #, python-format
 msgid "'%s' filter key is not valid, it maps to a relationship."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1299
+#: cinder/db/sqlalchemy/api.py:1239
 #, python-format
 msgid "'%s' filter key is not valid."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:1965
+#: cinder/db/sqlalchemy/api.py:1907
 #, python-format
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2666
+#: cinder/db/sqlalchemy/api.py:2608
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2751
-#, fuzzy
+#: cinder/db/sqlalchemy/api.py:2693
 msgid "Volume must be available"
-msgstr "Volume 狀態需要可被使用"
+msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2775
+#: cinder/db/sqlalchemy/api.py:2717
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2798
+#: cinder/db/sqlalchemy/api.py:2739
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3136,19 +3216,19 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migration.py:37
 msgid "version should be an integer"
-msgstr ""
+msgstr "版本應該是整數"
 
 #: cinder/db/sqlalchemy/migration.py:64
 msgid "Upgrade DB using Essex release first."
-msgstr ""
+msgstr "請先使用 Essex 版本來升級 DB。"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/001_cinder_init.py:240
 msgid "Exception while creating table."
-msgstr ""
+msgstr "建立表格時發生異常狀況。"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/001_cinder_init.py:269
 msgid "Downgrade from initial Cinder install is unsupported."
-msgstr ""
+msgstr "不支援從起始 Cinder 安裝降級。"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:49
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:74
@@ -3160,7 +3240,7 @@ msgstr ""
 #: cinder/db/sqlalchemy/migrate_repo/versions/020_add_volume_admin_metadata_table.py:46
 #, python-format
 msgid "Table |%s| not created!"
-msgstr ""
+msgstr "未建立表格 |%s|!"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:127
 msgid "Dropping foreign key reservations_ibfk_1 failed."
@@ -3168,31 +3248,31 @@ msgstr ""
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:133
 msgid "quota_classes table not dropped"
-msgstr ""
+msgstr "未捨棄 quota_classes 表格"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:140
 msgid "quota_usages table not dropped"
-msgstr ""
+msgstr "未捨棄 quota_usages 表格"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/002_quota_class.py:147
 msgid "reservations table not dropped"
-msgstr ""
+msgstr "未捨棄預約表格"
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:60
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:58
 msgid "Exception while creating table 'volume_glance_metadata'"
 msgstr ""
 
-#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:75
+#: cinder/db/sqlalchemy/migrate_repo/versions/003_glance_metadata.py:73
 msgid "volume_glance_metadata table not dropped"
-msgstr ""
+msgstr "未捨棄 volume_glance_metadata 表格"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/008_add_backup.py:68
 msgid "backups table not dropped"
-msgstr ""
+msgstr "未捨棄備份表格"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/009_add_snapshot_metadata_table.py:58
 msgid "snapshot_metadata table not dropped"
-msgstr ""
+msgstr "未捨棄 snapshot_metadata 表格"
 
 #: cinder/db/sqlalchemy/migrate_repo/versions/010_add_transfers_table.py:61
 msgid "transfers table not dropped"
@@ -3285,12 +3365,12 @@ msgstr ""
 
 #: cinder/image/image_utils.py:94 cinder/image/image_utils.py:199
 msgid "'qemu-img info' parsing failed."
-msgstr ""
+msgstr "'qemu-img info' 剖析失敗。"
 
 #: cinder/image/image_utils.py:101
 #, python-format
 msgid "fmt=%(fmt)s backed by: %(backing_file)s"
-msgstr ""
+msgstr "fmt = %(fmt)s 受 %(backing_file)s 支援"
 
 #: cinder/image/image_utils.py:109 cinder/image/image_utils.py:192
 #, python-format
@@ -3320,7 +3400,7 @@ msgstr ""
 #: cinder/image/image_utils.py:206
 #, python-format
 msgid "fmt=%(fmt)s backed by:%(backing_file)s"
-msgstr ""
+msgstr "fmt = %(fmt)s 受 %(backing_file)s 支援"
 
 #: cinder/image/image_utils.py:224
 #, python-format
@@ -3330,7 +3410,7 @@ msgstr ""
 #: cinder/image/image_utils.py:260
 #, python-format
 msgid "Converted to %(f1)s, but format is now %(f2)s"
-msgstr ""
+msgstr "已轉換為 %(f1)s,但格式現在為 %(f2)s"
 
 #: cinder/keymgr/conf_key_mgr.py:78
 msgid ""
@@ -3355,7 +3435,7 @@ msgstr ""
 #: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
-msgstr ""
+msgstr "正在捨棄原始異常狀況:%s"
 
 #: cinder/openstack/common/excutils.py:91
 #, python-format
@@ -3365,7 +3445,7 @@ msgstr ""
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
-msgstr ""
+msgstr "正在重新載入快取檔 %s"
 
 #: cinder/openstack/common/gettextutils.py:271
 msgid "Message objects do not support addition."
@@ -3384,62 +3464,62 @@ msgstr ""
 
 #: cinder/openstack/common/imageutils.py:104
 msgid "Snapshot list encountered but no header found!"
-msgstr ""
+msgstr "發現 Snapshot 清單,但找不到標頭!"
 
 #: cinder/openstack/common/lockutils.py:102
 #, python-format
 msgid "Could not release the acquired lock `%s`"
-msgstr ""
+msgstr "無法釋放獲得的鎖定 `%s`"
 
 #: cinder/openstack/common/lockutils.py:189
 #, python-format
 msgid "Got semaphore \"%(lock)s\" for method \"%(method)s\"..."
-msgstr ""
+msgstr "已取得方法 \"%(method)s\" 的號誌 \"%(lock)s\"..."
 
 #: cinder/openstack/common/lockutils.py:200
 #, python-format
 msgid "Attempting to grab file lock \"%(lock)s\" for method \"%(method)s\"..."
-msgstr ""
+msgstr "正在嘗試抓取方法 \"%(method)s\" 的檔案鎖定 \"%(lock)s\"..."
 
 #: cinder/openstack/common/lockutils.py:227
 #, python-format
 msgid "Got file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
-msgstr ""
+msgstr "已在 %(path)s 處取得方法 \"%(method)s\" 的檔案鎖定 \"%(lock)s\"..."
 
 #: cinder/openstack/common/lockutils.py:235
 #, python-format
 msgid "Released file lock \"%(lock)s\" at %(path)s for method \"%(method)s\"..."
-msgstr ""
+msgstr "已釋放方法 \"%(method)s\" 在 %(path)s 處的檔案鎖定 \"%(lock)s\"..."
 
-#: cinder/openstack/common/log.py:326
+#: cinder/openstack/common/log.py:327
 #, python-format
 msgid "Deprecated: %s"
-msgstr ""
+msgstr "已淘汰:%s"
 
-#: cinder/openstack/common/log.py:437
+#: cinder/openstack/common/log.py:438
 #, python-format
 msgid "Error loading logging config %(log_config)s: %(err_msg)s"
 msgstr ""
 
-#: cinder/openstack/common/log.py:488
+#: cinder/openstack/common/log.py:489
 #, python-format
 msgid "syslog facility must be one of: %s"
-msgstr ""
+msgstr "Syslog 機能必須是下列其中一項:%s"
 
-#: cinder/openstack/common/log.py:709
+#: cinder/openstack/common/log.py:710
 #, python-format
 msgid "Fatal call to deprecated config: %(msg)s"
-msgstr ""
+msgstr "呼叫已淘汰的配置時發生嚴重錯誤:%(msg)s"
 
 #: cinder/openstack/common/loopingcall.py:82
 #, python-format
 msgid "task run outlasted interval by %s sec"
-msgstr ""
+msgstr "作業執行時間超出間隔 %s 秒鐘"
 
 #: cinder/openstack/common/loopingcall.py:89
-#: cinder/tests/brick/test_brick_connector.py:466
+#: cinder/tests/brick/test_brick_connector.py:460
 msgid "in fixed duration looping call"
-msgstr ""
+msgstr "在固定持續時間的迴圈呼叫中"
 
 #: cinder/openstack/common/loopingcall.py:129
 #, python-format
@@ -3448,89 +3528,89 @@ msgstr ""
 
 #: cinder/openstack/common/loopingcall.py:136
 msgid "in dynamic looping call"
-msgstr ""
+msgstr "在動態迴圈呼叫中"
 
 #: cinder/openstack/common/periodic_task.py:43
 #, python-format
 msgid "Unexpected argument for periodic task creation: %(arg)s."
-msgstr ""
+msgstr "定期作業建立程序的引數不符合預期:%(arg)s。"
 
 #: cinder/openstack/common/periodic_task.py:134
 #, python-format
 msgid "Skipping periodic task %(task)s because its interval is negative"
-msgstr ""
+msgstr "正在跳過定期作業 %(task)s,因為其間隔為負數"
 
 #: cinder/openstack/common/periodic_task.py:139
 #, python-format
 msgid "Skipping periodic task %(task)s because it is disabled"
-msgstr ""
+msgstr "正在跳過定期作業 %(task)s,因為它已停用"
 
 #: cinder/openstack/common/periodic_task.py:177
 #, python-format
 msgid "Running periodic task %(full_task_name)s"
-msgstr ""
+msgstr "正在執行定期作業 %(full_task_name)s"
 
 #: cinder/openstack/common/periodic_task.py:186
 #, python-format
 msgid "Error during %(full_task_name)s: %(e)s"
-msgstr ""
+msgstr "執行 %(full_task_name)s 期間發生錯誤:%(e)s"
 
 #: cinder/openstack/common/policy.py:149
 #, python-format
 msgid ""
 "Inheritance-based rules are deprecated; use the default brain instead of "
 "%s."
-msgstr ""
+msgstr "繼承型規則已淘汰;請使用預設 brain 取代 %s。"
 
 #: cinder/openstack/common/policy.py:163
 #, python-format
 msgid "Failed to understand rule %(match)r"
-msgstr ""
+msgstr "無法理解規則 %(match)r"
 
 #: cinder/openstack/common/policy.py:173
 #, python-format
 msgid "Inheritance-based rules are deprecated; update _check_%s"
-msgstr ""
+msgstr "繼承型規則已淘汰;更新 _check_%s"
 
 #: cinder/openstack/common/policy.py:180
 #, python-format
 msgid "No handler for matches of kind %s"
-msgstr ""
+msgstr "類型為 %s 的相符項沒有處理程式"
 
 #: cinder/openstack/common/processutils.py:127
 #, python-format
 msgid "Got unknown keyword args to utils.execute: %r"
-msgstr ""
+msgstr "已取得 utils.execute 的不明關鍵字引數:%r"
 
 #: cinder/openstack/common/processutils.py:142
 #, python-format
 msgid "Running cmd (subprocess): %s"
-msgstr ""
+msgstr "正在執行 cmd(子程序):%s"
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:448
 #, python-format
 msgid "Result was %s"
-msgstr ""
+msgstr "結果是 %s"
 
 #: cinder/openstack/common/processutils.py:179
 #, python-format
 msgid "%r failed. Retrying."
-msgstr ""
+msgstr "%r 失敗。正在重試。"
 
 #: cinder/openstack/common/processutils.py:218
 #, python-format
 msgid "Running cmd (SSH): %s"
-msgstr ""
+msgstr "正在執行 cmd (SSH):%s"
 
 #: cinder/openstack/common/processutils.py:220
 msgid "Environment not supported over SSH"
-msgstr ""
+msgstr "無法透過 SSH 來支援環境"
 
 #: cinder/openstack/common/processutils.py:224
 msgid "process_input not supported over SSH"
-msgstr ""
+msgstr "無法透過 SSH 來支援 process_input"
 
 #: cinder/openstack/common/request_utils.py:66
 #, python-format
@@ -3553,7 +3633,7 @@ msgstr ""
 #: cinder/openstack/common/service.py:269
 #, python-format
 msgid "Caught %s, exiting"
-msgstr ""
+msgstr "已捕捉到 %s,正在結束"
 
 #: cinder/openstack/common/service.py:187
 msgid "Exception during rpc cleanup."
@@ -3561,50 +3641,50 @@ msgstr ""
 
 #: cinder/openstack/common/service.py:238
 msgid "Parent process has died unexpectedly, exiting"
-msgstr ""
+msgstr "母程序已非預期地當掉,正在結束"
 
 #: cinder/openstack/common/service.py:275
 msgid "Unhandled exception"
-msgstr ""
+msgstr "無法處理的異常狀況"
 
 #: cinder/openstack/common/service.py:308
 msgid "Forking too fast, sleeping"
-msgstr ""
+msgstr "分岔太快,正在休眠"
 
 #: cinder/openstack/common/service.py:327
 #, python-format
 msgid "Started child %d"
-msgstr ""
+msgstr "已啟動子項 %d"
 
 #: cinder/openstack/common/service.py:337
 #, python-format
 msgid "Starting %d workers"
-msgstr ""
+msgstr "正在啟動 %d 個工作程式"
 
 #: cinder/openstack/common/service.py:354
 #, python-format
 msgid "Child %(pid)d killed by signal %(sig)d"
-msgstr ""
+msgstr "信號 %(sig)d 結束了子項 %(pid)d"
 
 #: cinder/openstack/common/service.py:358
 #, python-format
 msgid "Child %(pid)s exited with status %(code)d"
-msgstr ""
+msgstr "子項 %(pid)s 已結束,狀態為 %(code)d"
 
 #: cinder/openstack/common/service.py:362
 #, python-format
 msgid "pid %d not in child list"
-msgstr ""
+msgstr "PID %d 不在子項清單中"
 
 #: cinder/openstack/common/service.py:392
 #, python-format
 msgid "Caught %s, stopping children"
-msgstr ""
+msgstr "已捕捉到 %s,正在停止子項"
 
 #: cinder/openstack/common/service.py:410
 #, python-format
 msgid "Waiting on %d children to exit"
-msgstr ""
+msgstr "正在等待 %d 個子項結束"
 
 #: cinder/openstack/common/sslutils.py:98
 #, python-format
@@ -3656,25 +3736,25 @@ msgstr ""
 
 #: cinder/openstack/common/db/exception.py:44
 msgid "Invalid Parameter: Unicode is not supported by the current database."
-msgstr ""
+msgstr "無效參數:現行資料庫不支援 Unicode。"
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:487
 msgid "DB exception wrapped."
-msgstr ""
+msgstr "已覆蓋 DB 異常狀況。"
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:538
 #, python-format
 msgid "Got mysql server has gone away: %s"
-msgstr ""
+msgstr "已取得 mysql 伺服器已斷線的訊息:%s"
 
 #: cinder/openstack/common/db/sqlalchemy/session.py:610
 #, python-format
 msgid "SQL connection failed. %s attempts left."
-msgstr ""
+msgstr "SQL 連線失敗。還可以嘗試 %s 次。"
 
 #: cinder/openstack/common/db/sqlalchemy/utils.py:33
 msgid "Sort key supplied was not valid."
-msgstr ""
+msgstr "提供的排序鍵無效。"
 
 #: cinder/openstack/common/scheduler/filters/capabilities_filter.py:54
 #, python-format
@@ -3693,7 +3773,7 @@ msgstr ""
 #: cinder/openstack/common/scheduler/filters/ignore_attempted_hosts_filter.py:52
 #, python-format
 msgid "Host %(host)s %(pass_msg)s.  Previously tried hosts: %(hosts)s"
-msgstr ""
+msgstr "主機 %(host)s %(pass_msg)s。先前嘗試的主機:%(hosts)s"
 
 #: cinder/scheduler/driver.py:69
 msgid "Must implement host_passes_filters"
@@ -3705,11 +3785,11 @@ msgstr ""
 
 #: cinder/scheduler/driver.py:78
 msgid "Must implement a fallback schedule"
-msgstr ""
+msgstr "必須實作撤回排程"
 
 #: cinder/scheduler/driver.py:82
 msgid "Must implement schedule_create_volume"
-msgstr ""
+msgstr "必須實作 schedule_create_volume"
 
 #: cinder/scheduler/filter_scheduler.py:98
 #, python-format
@@ -3730,19 +3810,19 @@ msgstr ""
 
 #: cinder/scheduler/filter_scheduler.py:156
 msgid "Invalid value for 'scheduler_max_attempts', must be >=1"
-msgstr ""
+msgstr "'scheduler_max_attempts' 的值無效,必須 >= 1"
 
 #: cinder/scheduler/filter_scheduler.py:174
 #, python-format
 msgid ""
 "Error scheduling %(volume_id)s from last vol-service: %(last_host)s : "
 "%(exc)s"
-msgstr ""
+msgstr "從前一個磁區服務 %(last_host)s 排程 %(volume_id)s 時發生錯誤:%(exc)s"
 
 #: cinder/scheduler/filter_scheduler.py:207
 #, python-format
 msgid "Exceeded max scheduling attempts %(max_attempts)d for volume %(volume_id)s"
-msgstr ""
+msgstr "已超出磁區 %(volume_id)s 的排程嘗試次數上限 %(max_attempts)d"
 
 #: cinder/scheduler/filter_scheduler.py:259
 #, python-format
@@ -3757,19 +3837,19 @@ msgstr ""
 #: cinder/scheduler/host_manager.py:266
 #, python-format
 msgid "Ignoring %(service_name)s service update from %(host)s"
-msgstr ""
+msgstr "正在忽略來自 %(host)s 的 %(service_name)s 服務程式更新"
 
 #: cinder/scheduler/host_manager.py:271
 #, python-format
 msgid "Received %(service_name)s service update from %(host)s."
-msgstr ""
+msgstr "已從 %(host)s 收到 %(service_name)s 服務程式更新。"
 
-#: cinder/scheduler/host_manager.py:297
+#: cinder/scheduler/host_manager.py:299
 #, python-format
-msgid "volume service is down or disabled. (host: %s)"
+msgid "volume service is down. (host: %s)"
 msgstr ""
 
-#: cinder/scheduler/host_manager.py:319
+#: cinder/scheduler/host_manager.py:320
 #, python-format
 msgid "Removing non-active host: %(host)s from scheduler cache."
 msgstr ""
@@ -3798,12 +3878,12 @@ msgstr ""
 #: cinder/scheduler/manager.py:219
 #, python-format
 msgid "Failed to schedule_%(method)s: %(ex)s"
-msgstr ""
+msgstr "無法執行 schedule_%(method)s:%(ex)s"
 
 #: cinder/scheduler/scheduler_options.py:68
 #, python-format
 msgid "Could not stat scheduler options file %(filename)s: '%(e)s'"
-msgstr ""
+msgstr "無法統計排程器選項檔案 %(filename)s:'%(e)s'"
 
 #: cinder/scheduler/scheduler_options.py:78
 #, python-format
@@ -3812,14 +3892,14 @@ msgstr ""
 
 #: cinder/scheduler/filters/capacity_filter.py:43
 msgid "Free capacity not set: volume node info collection broken."
-msgstr ""
+msgstr "未設定可用容量:磁區節點資訊收集已中斷。"
 
 #: cinder/scheduler/filters/capacity_filter.py:57
 #, python-format
 msgid ""
 "Insufficient free space for volume creation (requested / avail): "
 "%(requested)s/%(available)s"
-msgstr ""
+msgstr "可用空間不足以建立磁區(要求空間/可用空間):%(requested)s/%(available)s"
 
 #: cinder/scheduler/flows/create_volume.py:53
 msgid "No volume_id provided to populate a request_spec from"
@@ -3838,9 +3918,9 @@ msgstr ""
 #: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:883
 #, python-format
 msgid "FAKE ISCSI: %s"
-msgstr ""
+msgstr "偽造 iSCSI:%s"
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:983
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:1020
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3852,29 +3932,29 @@ msgstr ""
 #: cinder/tests/fake_driver.py:124 cinder/tests/fake_driver.py:129
 #, python-format
 msgid "LoggingVolumeDriver: %s"
-msgstr ""
+msgstr "LoggingVolumeDriver:%s"
 
 #: cinder/tests/fake_utils.py:70
 #, python-format
 msgid "Faking execution of cmd (subprocess): %s"
-msgstr ""
+msgstr "正在假裝執行指令(子程序):%s"
 
 #: cinder/tests/fake_utils.py:78
 #, python-format
 msgid "Faked command matched %s"
-msgstr ""
+msgstr "偽造的指令符合 %s"
 
 #: cinder/tests/fake_utils.py:94
 #, python-format
 msgid "Faked command raised an exception %s"
-msgstr ""
+msgstr "偽造的指令已發出異常狀況 %s"
 
 #: cinder/tests/fake_utils.py:97
 #, python-format
 msgid "Reply to faked command is stdout='%(stdout)s' stderr='%(stderr)s'"
-msgstr ""
+msgstr "對偽造指令的回覆是標準輸出 = '%(stdout)s' 標準錯誤 = '%(stderr)s'"
 
-#: cinder/tests/test_backup_ceph.py:840
+#: cinder/tests/test_backup_ceph.py:836
 #, python-format
 msgid ""
 "Failed to backup volume metadata - Metadata backup object "
@@ -3884,7 +3964,7 @@ msgstr ""
 #: cinder/tests/test_ibm_xiv_ds8k.py:102
 #, python-format
 msgid "Volume not found for instance %(instance_id)s."
-msgstr ""
+msgstr "找不到實例 %(instance_id)s 的磁區。"
 
 #: cinder/tests/test_misc.py:58
 #, python-format
@@ -3892,6 +3972,8 @@ msgid ""
 "The following migrations are missing a downgrade:\n"
 "\t%s"
 msgstr ""
+"下列移轉遺漏了降級:\n"
+"\t%s"
 
 #: cinder/tests/test_netapp.py:1327
 msgid "Error not a TypeError."
@@ -3906,50 +3988,55 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:176
+#: cinder/tests/test_rbd.py:831 cinder/volume/drivers/rbd.py:177
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
 #: cinder/tests/test_storwize_svc.py:252
 #, python-format
 msgid "unrecognized argument %s"
-msgstr ""
+msgstr "無法辨識的引數 %s"
 
-#: cinder/tests/test_storwize_svc.py:1504
+#: cinder/tests/test_storwize_svc.py:1441
 #, python-format
 msgid "Run CLI command: %s"
-msgstr ""
+msgstr "執行 CLI 指令:%s"
 
-#: cinder/tests/test_storwize_svc.py:1508
+#: cinder/tests/test_storwize_svc.py:1445
 #, python-format
 msgid ""
 "CLI output:\n"
 " stdout: %(stdout)s\n"
 " stderr: %(stderr)s"
 msgstr ""
+"CLI 輸出:\n"
+" 標準輸出:%(stdout)s\n"
+" 標準錯誤:%(stderr)s"
 
-#: cinder/tests/test_storwize_svc.py:1513
+#: cinder/tests/test_storwize_svc.py:1450
 #, python-format
 msgid ""
 "CLI Exception output:\n"
 " stdout: %(out)s\n"
 " stderr: %(err)s"
 msgstr ""
+"CLI 異常狀況輸出:\n"
+" 標準輸出:%(out)s\n"
+" 標準錯誤:%(err)s"
 
 #: cinder/tests/test_volume_types.py:60
 #, python-format
 msgid "Given data: %s"
-msgstr ""
+msgstr "給定資料:%s"
 
 #: cinder/tests/test_volume_types.py:61
 #, python-format
 msgid "Result data: %s"
-msgstr ""
+msgstr "結果資料:%s"
 
-#: cinder/tests/api/contrib/test_backups.py:737
-#, fuzzy
+#: cinder/tests/api/contrib/test_backups.py:734
 msgid "Invalid input"
-msgstr "無效的快照(snapshot)"
+msgstr "無效的輸入"
 
 #: cinder/tests/brick/test_brick_remotefs.py:99
 msgid "Unexpected call to _execute."
@@ -3962,7 +4049,7 @@ msgstr ""
 #: cinder/tests/integrated/test_login.py:29
 #, python-format
 msgid "volume: %s"
-msgstr ""
+msgstr "磁區:%s"
 
 #: cinder/tests/integrated/api/client.py:34
 #, python-format
@@ -3971,47 +4058,50 @@ msgid ""
 "Status Code: %(_status)s\n"
 "Body: %(_body)s"
 msgstr ""
+"%(message)s\n"
+"狀態碼:%(_status)s\n"
+"主體:%(_body)s"
 
 #: cinder/tests/integrated/api/client.py:44
 msgid "Authentication error"
-msgstr ""
+msgstr "鑑別錯誤"
 
 #: cinder/tests/integrated/api/client.py:52
 msgid "Authorization error"
-msgstr ""
+msgstr "授權錯誤"
 
 #: cinder/tests/integrated/api/client.py:60
 msgid "Item not found"
-msgstr ""
+msgstr "找不到項目"
 
 #: cinder/tests/integrated/api/client.py:97
 #, python-format
 msgid "Doing %(method)s on %(relative_url)s"
-msgstr ""
+msgstr "正在 %(relative_url)s 上執行 %(method)s"
 
 #: cinder/tests/integrated/api/client.py:100
 #, python-format
 msgid "Body: %s"
-msgstr ""
+msgstr "主體:%s"
 
 #: cinder/tests/integrated/api/client.py:124
 #, python-format
 msgid "%(auth_uri)s => code %(http_status)s"
-msgstr ""
+msgstr "%(auth_uri)s => 狀態碼 %(http_status)s"
 
 #: cinder/tests/integrated/api/client.py:147
 #, python-format
 msgid "%(relative_uri)s => code %(http_status)s"
-msgstr ""
+msgstr "%(relative_uri)s => 狀態碼 %(http_status)s"
 
 #: cinder/tests/integrated/api/client.py:158
 msgid "Unexpected status code"
-msgstr ""
+msgstr "非預期的狀態碼"
 
 #: cinder/tests/integrated/api/client.py:165
 #, python-format
 msgid "Decoding JSON: %s"
-msgstr ""
+msgstr "正在解碼 JSON:%s"
 
 #: cinder/tests/zonemanager/test_brcd_fc_zone_driver.py:124
 #, python-format
@@ -4049,12 +4139,12 @@ msgstr ""
 
 #: cinder/transfer/api.py:102 cinder/volume/api.py:350
 msgid "status must be available"
-msgstr ""
+msgstr "狀態必須可用"
 
 #: cinder/transfer/api.py:119
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to create transfer record for %s"
-msgstr "找不到Volume %s"
+msgstr ""
 
 #: cinder/transfer/api.py:136
 #, python-format
@@ -4066,7 +4156,7 @@ msgstr ""
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG volume "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
+msgstr "已超出 %(s_pid)s 的配額,且已嘗試建立 %(s_size)sG 磁區(已耗用 %(d_consumed)dG/%(d_quota)dG)"
 
 #: cinder/transfer/api.py:182
 #, python-format
@@ -4101,7 +4191,7 @@ msgstr ""
 
 #: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
-msgstr ""
+msgstr "無法更新用於刪除磁區的配額"
 
 #: cinder/volume/api.py:228
 #, python-format
@@ -4115,26 +4205,25 @@ msgstr ""
 #: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
-msgstr ""
+msgstr "磁區仍具有 %d 個相依 Snapshot"
 
 #: cinder/volume/api.py:293 cinder/volume/api.py:333
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
-msgstr ""
+msgstr "搜尋條件:%s"
 
 #: cinder/volume/api.py:353
 msgid "already attached"
-msgstr ""
+msgstr "已連接"
 
 #: cinder/volume/api.py:360
 msgid "status must be in-use to detach"
 msgstr ""
 
 #: cinder/volume/api.py:371
-#, fuzzy
 msgid "Volume status must be available to reserve"
-msgstr "Volume 狀態需要可被使用"
+msgstr "磁區狀態必須為可用才能保留"
 
 #: cinder/volume/api.py:447
 msgid "Snapshot cannot be created while volume is migrating"
@@ -4142,7 +4231,7 @@ msgstr ""
 
 #: cinder/volume/api.py:451
 msgid "must be available"
-msgstr ""
+msgstr "必須可用"
 
 #: cinder/volume/api.py:473
 #, python-format
@@ -4150,39 +4239,39 @@ msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
+"已超出 %(s_pid)s 的配額,且已嘗試建立 %(s_size)sG Snapshot(已耗用 "
+"%(d_consumed)dG/%(d_quota)dG)"
 
 #: cinder/volume/api.py:485
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
-msgstr ""
+msgstr "已超出 %(s_pid)s 的配額,且已嘗試建立 Snapshot(已耗用 %(d_consumed)d 個 Snapshot)"
 
 #: cinder/volume/api.py:536
-#, fuzzy
 msgid "Volume Snapshot status must be available or error"
-msgstr "Volume 狀態需要可被使用"
+msgstr "「磁區 Snapshot」狀態必須為可用或者錯誤"
 
 #: cinder/volume/api.py:564 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
-msgstr ""
+msgstr "meta 資料內容索引鍵空白"
 
 #: cinder/volume/api.py:568
 msgid "Metadata property key greater than 255 characters"
-msgstr ""
+msgstr "meta 資料內容索引鍵超過 255 個字元"
 
 #: cinder/volume/api.py:572
 msgid "Metadata property value greater than 255 characters"
-msgstr ""
+msgstr "meta 資料內容值超過 255 個字元"
 
 #: cinder/volume/api.py:703 cinder/volume/api.py:777
-#, fuzzy
 msgid "Volume status must be available/in-use."
-msgstr "Volume 狀態需要可被使用"
+msgstr "磁區狀態必須為可用/使用中。"
 
 #: cinder/volume/api.py:706
 msgid "Volume status is in-use."
-msgstr ""
+msgstr "磁區狀態為使用中。"
 
 #: cinder/volume/api.py:735
 msgid "Volume status must be available to extend."
@@ -4210,73 +4299,73 @@ msgstr ""
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:802
+#: cinder/volume/api.py:804
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:808
+#: cinder/volume/api.py:810
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:838
+#: cinder/volume/api.py:840
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:844
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:847
+#: cinder/volume/api.py:849
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:858
+#: cinder/volume/api.py:860
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:867
+#: cinder/volume/api.py:869
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:873
+#: cinder/volume/api.py:875
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:879
+#: cinder/volume/api.py:881
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:892
+#: cinder/volume/api.py:894
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:905
+#: cinder/volume/api.py:907
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:920
+#: cinder/volume/api.py:922
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:932
+#: cinder/volume/api.py:934
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
-#: cinder/volume/api.py:963
+#: cinder/volume/api.py:966
 msgid "Unable to find service for given host."
 msgstr ""
 
 #: cinder/volume/driver.py:195 cinder/volume/drivers/netapp/nfs.py:176
 #, python-format
 msgid "Recovering from a failed execute.  Try number %s"
-msgstr ""
+msgstr "從失敗的執行中回復。嘗試次數:%s"
 
 #: cinder/volume/driver.py:278
 #, python-format
@@ -4296,27 +4385,27 @@ msgstr ""
 #: cinder/volume/driver.py:335
 #, python-format
 msgid "copy_image_to_volume %s."
-msgstr ""
+msgstr "copy_image_to_volume %s。"
 
 #: cinder/volume/driver.py:352
 #, python-format
 msgid "copy_volume_to_image %s."
-msgstr ""
+msgstr "copy_volume_to_image %s。"
 
-#: cinder/volume/driver.py:378 cinder/volume/manager.py:781
+#: cinder/volume/driver.py:378 cinder/volume/manager.py:753
 #, python-format
 msgid "Volume %s: creating export"
 msgstr ""
 
-#: cinder/volume/driver.py:385 cinder/volume/manager.py:789
+#: cinder/volume/driver.py:385 cinder/volume/manager.py:762
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with driver provided model "
 "%(model)s"
 msgstr ""
 
-#: cinder/volume/driver.py:396 cinder/volume/manager.py:773
-#: cinder/volume/manager.py:798
+#: cinder/volume/driver.py:396 cinder/volume/manager.py:745
+#: cinder/volume/manager.py:770
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
@@ -4331,18 +4420,18 @@ msgstr ""
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:450 cinder/volume/manager.py:861
+#: cinder/volume/driver.py:450 cinder/volume/manager.py:836
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/driver.py:456 cinder/volume/manager.py:399
-#: cinder/volume/manager.py:867
+#: cinder/volume/driver.py:456 cinder/volume/manager.py:371
+#: cinder/volume/manager.py:842
 #, python-format
 msgid "volume %s: removing export"
-msgstr ""
+msgstr "磁區 %s:正在移除匯出"
 
-#: cinder/volume/driver.py:459 cinder/volume/manager.py:870
+#: cinder/volume/driver.py:459 cinder/volume/manager.py:845
 #, python-format
 msgid "Error detaching volume %(volume)s, due to remove export failure."
 msgstr ""
@@ -4365,9 +4454,9 @@ msgstr ""
 msgid "Manage existing volume not implemented."
 msgstr ""
 
-#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:154
+#: cinder/volume/driver.py:639 cinder/volume/drivers/emc/emc_smis_iscsi.py:151
 msgid "ISCSI provider_location not stored, using discovery"
-msgstr ""
+msgstr "未儲存 ISCSI provider_location,正在使用探索"
 
 #: cinder/volume/driver.py:652
 #, python-format
@@ -4380,27 +4469,27 @@ msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
 #: cinder/volume/driver.py:701
-#, fuzzy, python-format
+#, python-format
 msgid "Could not find iSCSI export for volume %s"
-msgstr "找不到Volume %s"
+msgstr "找不到磁區 %s 的 iSCSI 匯出"
 
 #: cinder/volume/driver.py:705 cinder/volume/drivers/emc/emc_cli_iscsi.py:169
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:197
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:194
 #, python-format
 msgid "ISCSI Discovery: Found %s"
-msgstr ""
+msgstr "ISCSI 探索:找到 %s"
 
 #: cinder/volume/driver.py:802
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:823 cinder/volume/driver.py:944
+#: cinder/volume/driver.py:823 cinder/volume/driver.py:981
 #: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:345
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:1025
-#: cinder/volume/drivers/emc/emc_smis_fc.py:221
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:280
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:811
+#: cinder/volume/drivers/emc/emc_smis_fc.py:218
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:868
 #: cinder/volume/drivers/netapp/iscsi.py:1058
 #: cinder/volume/drivers/netapp/iscsi.py:1472
 #: cinder/volume/drivers/nexenta/iscsi.py:575
@@ -4408,37 +4497,44 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:1023
+#: cinder/volume/driver.py:1060
 msgid "Driver must implement initialize_connection"
+msgstr "驅動程式必須實作 initialize_connection"
+
+#: cinder/volume/driver.py:1075
+#, python-format
+msgid ""
+"FibreChannelDriver validate_connector failed. No '%s'. Make sure HBA "
+"state is Online."
 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 ""
+msgstr "正在跳過 remove_export。未給磁區 %s 供應 iscsi_target"
 
 #: cinder/volume/iscsi.py:80
 #, python-format
 msgid ""
 "Skipping remove_export. No iscsi_target is presently exported for volume:"
 " %s"
-msgstr ""
+msgstr "正在跳過 remove_export。目前沒有給磁區 %s 匯出 iscsi_target"
 
 #: cinder/volume/iscsi.py:100
 msgid "Detected inconsistency in provider_location id"
-msgstr ""
+msgstr "偵測到 provider_location ID 不一致"
 
 #: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:572
 #: cinder/volume/drivers/huawei/rest_common.py:1225
 #, python-format
 msgid "%s"
-msgstr ""
+msgstr "%s"
 
 #: cinder/volume/iscsi.py:184
 #, python-format
 msgid "Symbolic link %s not found"
-msgstr ""
+msgstr "找不到符號鏈結 %s"
 
 #: cinder/volume/iscsi.py:251
 #, python-format
@@ -4448,287 +4544,281 @@ msgstr ""
 #: cinder/volume/iscsi.py:252
 #, python-format
 msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
+msgstr "正在跳過 ensure_export。未給磁區 %s 供應 iscsi_target"
 
-#: cinder/volume/manager.py:193
+#: cinder/volume/manager.py:173
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
-msgstr ""
-
-#: cinder/volume/manager.py:199
-msgid ""
-"ThinLVMVolumeDriver is deprecated, please configure LVMISCSIDriver and "
-"lvm_type=thin.  Continuing with those settings."
-msgstr ""
+msgstr "驅動程式路徑 %s 已淘汰,請更新配置以使用新路徑。"
 
-#: cinder/volume/manager.py:232
+#: cinder/volume/manager.py:204
 #, python-format
 msgid ""
 "Starting FC Zone Manager %(zm_version)s, Driver %(drv_name)s "
 "%(drv_version)s"
 msgstr ""
 
-#: cinder/volume/manager.py:238
+#: cinder/volume/manager.py:210
 #, python-format
 msgid "Starting volume driver %(driver_name)s (%(version)s)"
 msgstr ""
 
-#: cinder/volume/manager.py:245
+#: cinder/volume/manager.py:217
 #, python-format
 msgid "Error encountered during initialization of driver: %(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:254
+#: cinder/volume/manager.py:226
 #, python-format
 msgid "Re-exporting %s volumes"
-msgstr ""
+msgstr "正在重新匯出 %s 磁區"
 
-#: cinder/volume/manager.py:267
+#: cinder/volume/manager.py:239
 #, python-format
 msgid "Failed to re-export volume %s: setting to error state"
 msgstr ""
 
-#: cinder/volume/manager.py:274
+#: cinder/volume/manager.py:246
 #, python-format
 msgid "volume %s stuck in a downloading state"
 msgstr ""
 
-#: cinder/volume/manager.py:281
+#: cinder/volume/manager.py:253
 #, python-format
 msgid "volume %s: skipping export"
-msgstr ""
+msgstr "磁區 %s:正在跳過匯出"
 
-#: cinder/volume/manager.py:283
+#: cinder/volume/manager.py:255
 #, python-format
 msgid ""
 "Error encountered during re-exporting phase of driver initialization:  "
 "%(name)s"
 msgstr ""
 
-#: cinder/volume/manager.py:293
+#: cinder/volume/manager.py:265
 msgid "Resuming any in progress delete operations"
-msgstr ""
+msgstr "正在回復任何進行中刪除作業"
 
-#: cinder/volume/manager.py:296
+#: cinder/volume/manager.py:268
 #, python-format
 msgid "Resuming delete on volume: %s"
-msgstr ""
+msgstr "正在磁區 %s 上回復刪除"
 
-#: cinder/volume/manager.py:338 cinder/volume/manager.py:340
+#: cinder/volume/manager.py:310 cinder/volume/manager.py:312
 msgid "Failed to create manager volume flow"
 msgstr ""
 
-#: cinder/volume/manager.py:384 cinder/volume/manager.py:401
+#: cinder/volume/manager.py:356 cinder/volume/manager.py:373
 #, python-format
 msgid "volume %s: deleting"
-msgstr ""
+msgstr "磁區 %s:正在刪除"
 
-#: cinder/volume/manager.py:390
+#: cinder/volume/manager.py:362
 msgid "volume is not local to this node"
-msgstr ""
+msgstr "磁區不是此節點的本端磁區"
 
-#: cinder/volume/manager.py:407
+#: cinder/volume/manager.py:379
 #, python-format
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:434
+#: cinder/volume/manager.py:406
 msgid "Failed to update usages deleting volume"
-msgstr ""
+msgstr "無法更新刪除磁區的相關用法"
 
-#: cinder/volume/manager.py:440
+#: cinder/volume/manager.py:412
 #, python-format
 msgid "volume %s: deleted successfully"
-msgstr ""
+msgstr "磁區 %s:已順利刪除"
 
-#: cinder/volume/manager.py:457
+#: cinder/volume/manager.py:429
 #, python-format
 msgid "snapshot %s: creating"
-msgstr ""
+msgstr "Snapshot %s:正在建立"
 
-#: cinder/volume/manager.py:468
+#: cinder/volume/manager.py:440
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:468
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:502
+#: cinder/volume/manager.py:474
 #, python-format
 msgid "snapshot %s: created successfully"
-msgstr ""
+msgstr "Snapshot %s:已順利建立"
 
-#: cinder/volume/manager.py:514 cinder/volume/manager.py:524
+#: cinder/volume/manager.py:486 cinder/volume/manager.py:496
 #, python-format
 msgid "snapshot %s: deleting"
-msgstr ""
+msgstr "Snapshot %s:正在刪除"
 
-#: cinder/volume/manager.py:532
+#: cinder/volume/manager.py:504
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:562
+#: cinder/volume/manager.py:534
 msgid "Failed to update usages deleting snapshot"
-msgstr ""
+msgstr "無法更新刪除 Snapshot 的相關用法"
 
-#: cinder/volume/manager.py:565
+#: cinder/volume/manager.py:537
 #, python-format
 msgid "snapshot %s: deleted successfully"
-msgstr ""
+msgstr "Snapshot %s:已順利刪除"
 
-#: cinder/volume/manager.py:585
+#: cinder/volume/manager.py:557
 msgid "being attached by another instance"
-msgstr ""
+msgstr "正在由另一個實例進行連接"
 
-#: cinder/volume/manager.py:589
+#: cinder/volume/manager.py:561
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:593
+#: cinder/volume/manager.py:565
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:596
+#: cinder/volume/manager.py:568
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:689
+#: cinder/volume/manager.py:661
 #, python-format
 msgid "Error detaching volume %(volume)s, due to uninitialized driver."
 msgstr ""
 
-#: cinder/volume/manager.py:714
+#: cinder/volume/manager.py:686
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
-msgstr ""
+msgstr "已順利地將磁區 %(volume_id)s 上傳至映像檔 (%(image_id)s)"
 
-#: cinder/volume/manager.py:832 cinder/volume/manager.py:857
+#: cinder/volume/manager.py:807 cinder/volume/manager.py:832
 #, python-format
 msgid "Zoning Mode: %s"
 msgstr ""
 
-#: cinder/volume/manager.py:917
+#: cinder/volume/manager.py:892
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:920
+#: cinder/volume/manager.py:895
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:943
+#: cinder/volume/manager.py:918
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:972
+#: cinder/volume/manager.py:947
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:984
+#: cinder/volume/manager.py:959
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1003
+#: cinder/volume/manager.py:978
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:1039
+#: cinder/volume/manager.py:1014
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1079 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
+#: cinder/volume/manager.py:1054 cinder/volume/drivers/emc/emc_cli_iscsi.py:247
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:226
 msgid "Updating volume status"
-msgstr ""
+msgstr "正在更新磁區狀態"
 
-#: cinder/volume/manager.py:1087
+#: cinder/volume/manager.py:1062
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1109
+#: cinder/volume/manager.py:1084
 #, python-format
 msgid "Notification {%s} received"
-msgstr ""
+msgstr "收到通知 {%s}"
 
-#: cinder/volume/manager.py:1144
+#: cinder/volume/manager.py:1119
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1146
+#: cinder/volume/manager.py:1121
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1148
+#: cinder/volume/manager.py:1123
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1153
+#: cinder/volume/manager.py:1128
 #, python-format
 msgid "Volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1213
+#: cinder/volume/manager.py:1188
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1214
+#: cinder/volume/manager.py:1189
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1234
+#: cinder/volume/manager.py:1209
 #, python-format
 msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1237
+#: cinder/volume/manager.py:1212
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1248
+#: cinder/volume/manager.py:1223
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1256
+#: cinder/volume/manager.py:1231
 msgid "Volume must not have snapshots."
 msgstr ""
 
-#: cinder/volume/manager.py:1292
+#: cinder/volume/manager.py:1267
 msgid "Failed to create manage_existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1294
+#: cinder/volume/manager.py:1269
 msgid "Failed to create manage existing flow."
 msgstr ""
 
-#: cinder/volume/manager.py:1318
+#: cinder/volume/manager.py:1293
 #, python-format
 msgid "Initiator Target map:%s"
 msgstr ""
 
-#: cinder/volume/manager.py:1323
+#: cinder/volume/manager.py:1298
 #, python-format
 msgid "Zoning op: %s"
 msgstr ""
@@ -4744,13 +4834,13 @@ msgstr ""
 #: cinder/volume/volume_types.py:43
 #, python-format
 msgid "DB error: %s"
-msgstr ""
+msgstr "DB 錯誤:%s"
 
 #: cinder/volume/qos_specs.py:123 cinder/volume/qos_specs.py:140
 #: cinder/volume/qos_specs.py:272 cinder/volume/volume_types.py:52
 #: cinder/volume/volume_types.py:99
 msgid "id cannot be None"
-msgstr ""
+msgstr "ID 不能為 None"
 
 #: cinder/volume/qos_specs.py:156
 #, python-format
@@ -4781,32 +4871,32 @@ msgstr ""
 
 #: cinder/volume/qos_specs.py:284 cinder/volume/volume_types.py:111
 msgid "name cannot be None"
-msgstr ""
+msgstr "名稱不能為 None"
 
-#: cinder/volume/utils.py:115
+#: cinder/volume/utils.py:116
 #, 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:176
+#: cinder/volume/utils.py:177
 #, python-format
 msgid "Performing secure delete on volume: %s"
-msgstr ""
+msgstr "正在磁區 %s 上執行安全刪除"
 
 #: cinder/volume/volume_types.py:130
 #, python-format
 msgid ""
 "Default volume type is not found, please check default_volume_type "
 "config: %s"
-msgstr ""
+msgstr "找不到預設磁區類型,請檢查 default_volume_type 配置:%s"
 
 #: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:284
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
-msgstr ""
+msgstr "正在建立磁區 %s 的複本"
 
 #: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
@@ -4916,11 +5006,11 @@ msgstr ""
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
 
-#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:149
+#: cinder/volume/drivers/eqlx.py:215 cinder/volume/drivers/san/san.py:148
 #: cinder/zonemanager/drivers/brocade/brcd_fc_zone_client_cli.py:414
-#, fuzzy, python-format
+#, python-format
 msgid "Error running SSH command: %s"
-msgstr "非預期的執行錯誤"
+msgstr "執行 SSH 指令時發生錯誤:%s"
 
 #: cinder/volume/drivers/eqlx.py:282
 #, python-format
@@ -4996,219 +5086,219 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:101
+#: cinder/volume/drivers/glusterfs.py:102
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
-msgstr ""
+msgstr "未配置任何 Gluster 配置檔 (%s)"
 
-#: cinder/volume/drivers/glusterfs.py:106
+#: cinder/volume/drivers/glusterfs.py:107
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
-msgstr ""
+msgstr "%(config)s 處不存在 Gluster 配置檔"
 
-#: cinder/volume/drivers/glusterfs.py:118
+#: cinder/volume/drivers/glusterfs.py:119
 msgid "mount.glusterfs is not installed"
-msgstr ""
+msgstr "未安裝 mount.glusterfs"
 
-#: cinder/volume/drivers/glusterfs.py:176
+#: cinder/volume/drivers/glusterfs.py:177
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:181
+#: cinder/volume/drivers/glusterfs.py:182
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:141
+#: cinder/volume/drivers/glusterfs.py:218 cinder/volume/drivers/nfs.py:141
 #: cinder/volume/drivers/netapp/nfs.py:787
 #, python-format
 msgid "casted to %s"
-msgstr ""
+msgstr "已強制轉型為 %s"
 
-#: cinder/volume/drivers/glusterfs.py:231
+#: cinder/volume/drivers/glusterfs.py:232
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:253
+#: cinder/volume/drivers/glusterfs.py:254
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:272
+#: cinder/volume/drivers/glusterfs.py:273
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:191
+#: cinder/volume/drivers/glusterfs.py:291 cinder/volume/drivers/nfs.py:191
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
-msgstr ""
+msgstr "沒有給磁區 %s 指定 provider_location,正在跳過"
 
-#: cinder/volume/drivers/glusterfs.py:388
+#: cinder/volume/drivers/glusterfs.py:394
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:418
+#: cinder/volume/drivers/glusterfs.py:424
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:420
+#: cinder/volume/drivers/glusterfs.py:426
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:442
+#: cinder/volume/drivers/glusterfs.py:448
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:446
+#: cinder/volume/drivers/glusterfs.py:452
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:459
+#: cinder/volume/drivers/glusterfs.py:465
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:471
+#: cinder/volume/drivers/glusterfs.py:477
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:472
+#: cinder/volume/drivers/glusterfs.py:478
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:549
+#: cinder/volume/drivers/glusterfs.py:555
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:579
+#: cinder/volume/drivers/glusterfs.py:585
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:583
+#: cinder/volume/drivers/glusterfs.py:589
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:599
+#: cinder/volume/drivers/glusterfs.py:605
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:604
+#: cinder/volume/drivers/glusterfs.py:610
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:631
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:642
+#: cinder/volume/drivers/glusterfs.py:648
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:697
+#: cinder/volume/drivers/glusterfs.py:703
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:707
+#: cinder/volume/drivers/glusterfs.py:713
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:718
+#: cinder/volume/drivers/glusterfs.py:724
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:744
+#: cinder/volume/drivers/glusterfs.py:750
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:795
+#: cinder/volume/drivers/glusterfs.py:801
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:813
+#: cinder/volume/drivers/glusterfs.py:819
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:819
+#: cinder/volume/drivers/glusterfs.py:825
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:832
+#: cinder/volume/drivers/glusterfs.py:838
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:921
+#: cinder/volume/drivers/glusterfs.py:927
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:985
+#: cinder/volume/drivers/glusterfs.py:991
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:999
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1008
+#: cinder/volume/drivers/glusterfs.py:1014
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1011
+#: cinder/volume/drivers/glusterfs.py:1017
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1037 cinder/volume/drivers/nfs.py:178
+#: cinder/volume/drivers/glusterfs.py:1043 cinder/volume/drivers/nfs.py:178
 #, python-format
 msgid "Exception during mounting %s"
-msgstr ""
+msgstr "裝載 %s 期間發生異常狀況"
 
-#: cinder/volume/drivers/glusterfs.py:1039
+#: cinder/volume/drivers/glusterfs.py:1045
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1056
+#: cinder/volume/drivers/glusterfs.py:1062
 #, 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:1162
+#: cinder/volume/drivers/glusterfs.py:1168
 msgid "Backup is not supported for GlusterFS volumes with snapshots."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1177
+#: cinder/volume/drivers/glusterfs.py:1183
 #, python-format
 msgid ""
 "No snapshots found in database, but %(path)s has backing file "
 "%(backing_file)s!"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1185
+#: cinder/volume/drivers/glusterfs.py:1191
 msgid "Backup is only supported for raw-formatted GlusterFS volumes."
 msgstr ""
 
@@ -5230,7 +5320,7 @@ msgstr ""
 #: cinder/volume/drivers/lvm.py:246
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
-msgstr ""
+msgstr "找不到 Snapshot %s,正在跳過刪除作業"
 
 #: cinder/volume/drivers/lvm.py:347
 #, python-format
@@ -5275,17 +5365,17 @@ msgstr ""
 #: cinder/volume/drivers/nfs.py:380
 #, python-format
 msgid "%s is already mounted"
-msgstr ""
+msgstr "已裝載 %s"
 
 #: cinder/volume/drivers/nfs.py:432
 #, python-format
 msgid "There's no NFS config file configured (%s)"
-msgstr ""
+msgstr "未配置任何 NFS 配置檔 (%s)"
 
 #: cinder/volume/drivers/nfs.py:437
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
-msgstr ""
+msgstr "%(config)s 處不存在 NFS 配置檔"
 
 #: cinder/volume/drivers/nfs.py:442
 #, python-format
@@ -5317,175 +5407,174 @@ msgstr ""
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:161
+#: cinder/volume/drivers/rbd.py:162
 #, python-format
 msgid "Invalid argument - whence=%s not supported"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:165
+#: cinder/volume/drivers/rbd.py:166
 msgid "Invalid argument"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:184
+#: cinder/volume/drivers/rbd.py:185
 msgid "fileno() not supported by RBD()"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:211
+#: cinder/volume/drivers/rbd.py:212
 #, python-format
 msgid "error opening rbd image %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:260
+#: cinder/volume/drivers/rbd.py:261
 msgid "rados and rbd python libraries not found"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:266
+#: cinder/volume/drivers/rbd.py:267
 msgid "error connecting to ceph cluster"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:347 cinder/volume/drivers/sheepdog.py:178
+#: cinder/volume/drivers/rbd.py:348 cinder/volume/drivers/sheepdog.py:178
 msgid "error refreshing volume stats"
-msgstr ""
+msgstr "重新整理磁區統計資料時發生錯誤"
 
-#: cinder/volume/drivers/rbd.py:378
+#: cinder/volume/drivers/rbd.py:379
 #, python-format
 msgid "clone depth exceeds limit of %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:412
+#: cinder/volume/drivers/rbd.py:413
 #, python-format
 msgid "maximum clone depth (%d) has been reached - flattening source volume"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:424
+#: cinder/volume/drivers/rbd.py:425
 #, python-format
 msgid "flattening source volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:436
+#: cinder/volume/drivers/rbd.py:437
 #, python-format
 msgid "creating snapshot='%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:446
+#: cinder/volume/drivers/rbd.py:447
 #, python-format
 msgid "cloning '%(src_vol)s@%(src_snap)s' to '%(dest)s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:460
+#: cinder/volume/drivers/rbd.py:461
 msgid "clone created successfully"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:469
+#: cinder/volume/drivers/rbd.py:470
 #, python-format
 msgid "creating volume '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:485
+#: cinder/volume/drivers/rbd.py:486
 #, python-format
 msgid "flattening %(pool)s/%(img)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:491
+#: cinder/volume/drivers/rbd.py:492
 #, python-format
 msgid "cloning %(pool)s/%(img)s@%(snap)s to %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:528
+#: cinder/volume/drivers/rbd.py:529
 msgid "volume has no backup snaps"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:551
+#: cinder/volume/drivers/rbd.py:552
 #, python-format
 msgid "volume %s is not a clone"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:569
+#: cinder/volume/drivers/rbd.py:570
 #, python-format
 msgid "deleting parent snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:580
+#: cinder/volume/drivers/rbd.py:581
 #, python-format
 msgid "deleting parent %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:596
+#: cinder/volume/drivers/rbd.py:597
 #, python-format
 msgid "volume %s no longer exists in backend"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:612
+#: cinder/volume/drivers/rbd.py:613
 msgid "volume has clone snapshot(s)"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:628
+#: cinder/volume/drivers/rbd.py:629
 #, python-format
 msgid "deleting rbd volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:632
+#: cinder/volume/drivers/rbd.py:633
 msgid ""
 "ImageBusy error raised while deleting rbd volume. This may have been "
 "caused by a connection from a client that has crashed and, if so, may be "
 "resolved by retrying the delete after 30 seconds has elapsed."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:645
+#: cinder/volume/drivers/rbd.py:646
 msgid "volume is a clone so cleaning references"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:702
+#: cinder/volume/drivers/rbd.py:703
 #, python-format
 msgid "connection data: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:711
+#: cinder/volume/drivers/rbd.py:712
 msgid "Not stored in rbd"
-msgstr ""
+msgstr "未儲存在 rbd 中"
 
-#: cinder/volume/drivers/rbd.py:715
+#: cinder/volume/drivers/rbd.py:716
 msgid "Blank components"
-msgstr ""
+msgstr "空白元件"
 
-#: cinder/volume/drivers/rbd.py:718
-#, fuzzy
+#: cinder/volume/drivers/rbd.py:719
 msgid "Not an rbd snapshot"
-msgstr "無效的快照(snapshot)"
+msgstr "不是 rbd Snapshot"
 
-#: cinder/volume/drivers/rbd.py:730
+#: cinder/volume/drivers/rbd.py:731
 #, python-format
 msgid "not cloneable: %s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:734
+#: cinder/volume/drivers/rbd.py:735
 #, python-format
 msgid "%s is in a different ceph cluster"
-msgstr ""
+msgstr "%s 位於其他 ceph 叢集中"
 
-#: cinder/volume/drivers/rbd.py:739
+#: cinder/volume/drivers/rbd.py:740
 msgid "rbd image clone requires image format to be 'raw' but image {0} is '{1}'"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:753
-#, fuzzy, python-format
+#: cinder/volume/drivers/rbd.py:754
+#, python-format
 msgid "Unable to open image %(loc)s: %(err)s"
-msgstr "找不到Volume %s"
+msgstr ""
 
-#: cinder/volume/drivers/rbd.py:823
+#: cinder/volume/drivers/rbd.py:824
 msgid "volume backup complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:836
+#: cinder/volume/drivers/rbd.py:837
 msgid "volume restore complete."
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:846 cinder/volume/drivers/sheepdog.py:195
+#: cinder/volume/drivers/rbd.py:847 cinder/volume/drivers/sheepdog.py:195
 #, python-format
 msgid "Failed to Extend Volume %(volname)s"
 msgstr ""
 
-#: cinder/volume/drivers/rbd.py:851 cinder/volume/drivers/sheepdog.py:200
+#: cinder/volume/drivers/rbd.py:852 cinder/volume/drivers/sheepdog.py:200
 #: cinder/volume/drivers/windows/windows.py:223
 #, python-format
 msgid "Extend volume from %(old_size)s GB to %(new_size)s GB."
@@ -5493,39 +5582,39 @@ msgstr ""
 
 #: cinder/volume/drivers/scality.py:67
 msgid "Value required for 'scality_sofs_config'"
-msgstr ""
+msgstr "'scality_sofs_config' 需要值"
 
 #: cinder/volume/drivers/scality.py:78
 #, python-format
 msgid "Cannot access 'scality_sofs_config': %s"
-msgstr ""
+msgstr "無法存取 'scality_sofs_config':%s"
 
 #: cinder/volume/drivers/scality.py:84
 msgid "Cannot execute /sbin/mount.sofs"
-msgstr ""
+msgstr "無法執行 /sbin/mount.sofs"
 
 #: cinder/volume/drivers/scality.py:105
 msgid "Cannot mount Scality SOFS, check syslog for errors"
-msgstr ""
+msgstr "無法裝載 Scality SOFS,請檢查系統日誌以找出錯誤"
 
 #: cinder/volume/drivers/scality.py:139
 #, python-format
 msgid "Cannot find volume dir for Scality SOFS at '%s'"
-msgstr ""
+msgstr "在 '%s' 處找不到 Scality SOFS 的磁區目錄"
 
 #: cinder/volume/drivers/sheepdog.py:59
 #, python-format
 msgid "Sheepdog is not working: %s"
-msgstr ""
+msgstr "Sheepdog 不在工作中:%s"
 
 #: cinder/volume/drivers/sheepdog.py:64
 msgid "Sheepdog is not working"
-msgstr ""
+msgstr "Sheepdog 不在工作中"
 
 #: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
-msgstr ""
+msgstr "SolidFire API 呼叫的有效負載:%s"
 
 #: cinder/volume/drivers/solidfire.py:149
 #, python-format
@@ -5554,53 +5643,53 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
-msgstr ""
+msgstr "呼叫 json.loads() 時發出異常狀況:%s"
 
 #: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
-msgstr ""
+msgstr "SolidFire API 呼叫的結果:%s"
 
 #: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
-msgstr ""
+msgstr "發現複製作業:%s"
 
 #: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
-msgstr ""
+msgstr "重試 Snapshot 之前,等待未完成的作業:%s"
 
 #: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
-msgstr ""
+msgstr "偵測到 xDBVersionMismatch,重試第 %s 次(共 5 次)"
 
 #: 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 ""
+msgstr "API 回應:%s"
 
 #: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
-msgstr ""
+msgstr "找到 SolidFire 帳戶:%s"
 
 #: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
-msgstr ""
+msgstr "SolidFire 帳戶:%s 不存在,建立該帳戶..."
 
 #: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
-msgstr ""
+msgstr "無法在 get_by_account 中擷取磁區 SolidFire-ID:%s!"
 
 #: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
-msgstr ""
+msgstr "無法從複本取得模型更新"
 
 #: cinder/volume/drivers/solidfire.py:408
 #, python-format
@@ -5610,7 +5699,7 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
-msgstr ""
+msgstr "使用 %s 偵測到多個有效預設"
 
 #: cinder/volume/drivers/solidfire.py:458
 #, python-format
@@ -5620,26 +5709,26 @@ msgstr ""
 #: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
-msgstr ""
+msgstr "已將 SolidFire volumeID %(sfid)s 對映到 Cinder ID %(uuid)s。"
 
 #: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
-msgstr ""
+msgstr "在「SF 叢集」上找不到磁區 %s。"
 
 #: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
-msgstr ""
+msgstr "發現 %(count)s 個磁區已對映到 ID:%(uuid)s。"
 
 #: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
-msgstr ""
+msgstr "進入 SolidFire delete_volume..."
 
 #: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
-msgstr ""
+msgstr "在「SolidFire 叢集」上找不到磁區 ID %s 的帳戶!"
 
 #: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
@@ -5652,23 +5741,23 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:570
 #: cinder/volume/drivers/solidfire.py:644
-#: cinder/volume/drivers/solidfire.py:707
-#: cinder/volume/drivers/solidfire.py:732
+#: cinder/volume/drivers/solidfire.py:708
+#: cinder/volume/drivers/solidfire.py:733
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
-msgstr ""
+msgstr "在「SolidFire 叢集」上找不到磁區 ID %s!"
 
 #: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
-msgstr ""
+msgstr "正在離開 SolidFire delete_volume"
 
 #: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
-msgstr ""
+msgstr "正在執行 SolidFire ensure_export..."
 
 #: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
-msgstr ""
+msgstr "正在執行 SolidFire create_export..."
 
 #: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
@@ -5680,31 +5769,30 @@ msgstr ""
 
 #: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
-msgstr ""
+msgstr "正在更新叢集狀態資訊"
 
 #: cinder/volume/drivers/solidfire.py:671
-#, fuzzy
 msgid "Failed to get updated stats"
-msgstr "內文解碼失敗"
+msgstr "無法取得已更新的統計資料"
 
-#: cinder/volume/drivers/solidfire.py:701
-#: cinder/volume/drivers/solidfire.py:726
+#: cinder/volume/drivers/solidfire.py:702
+#: cinder/volume/drivers/solidfire.py:727
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:771
+#: cinder/volume/drivers/solidfire.py:772
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
 #: cinder/volume/drivers/zadara.py:236
 #, python-format
 msgid "Sending %(method)s to %(url)s. Body \"%(body)s\""
-msgstr ""
+msgstr "正在將 %(method)s 傳送至 %(url)s。主體 \"%(body)s\""
 
 #: cinder/volume/drivers/zadara.py:260
 #, python-format
 msgid "Operation completed. %(data)s"
-msgstr ""
+msgstr "作業已完成。%(data)s"
 
 #: cinder/volume/drivers/zadara.py:357
 #, python-format
@@ -5714,7 +5802,7 @@ msgstr ""
 #: cinder/volume/drivers/zadara.py:408 cinder/volume/drivers/zadara.py:531
 #, python-format
 msgid "Volume %(name)s could not be found. It might be already deleted"
-msgstr ""
+msgstr "找不到磁區 %(name)s。它可能已刪除"
 
 #: cinder/volume/drivers/zadara.py:438
 #, python-format
@@ -5755,7 +5843,7 @@ msgstr ""
 #: cinder/volume/drivers/zadara.py:614
 #, python-format
 msgid "Attach properties: %(properties)s"
-msgstr ""
+msgstr "附加內容:%(properties)s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:125
 #, python-format
@@ -5763,22 +5851,22 @@ msgid "iSCSI provider_location not stored for volume %s, using discovery."
 msgstr ""
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:165
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:193
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:190
 #, python-format
 msgid "Could not find iSCSI export  for volume %s"
-msgstr ""
+msgstr "找不到磁區 %s 的 iSCSI 匯出"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:176
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:202
-#, fuzzy, python-format
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:199
+#, python-format
 msgid "Cannot find device number for volume %s"
-msgstr "找不到Volume %s"
+msgstr "找不到磁區 %s 的裝置號碼"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:202
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:232
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:229
 #, python-format
 msgid "Found iSCSI endpoint: %s"
-msgstr ""
+msgstr "找到 iSCSI 端點:%s"
 
 #: cinder/volume/drivers/emc/emc_cli_iscsi.py:209
 #, python-format
@@ -5794,36 +5882,36 @@ msgstr ""
 msgid ""
 "Module PyWBEM not installed.  Install PyWBEM using the python-pywbem "
 "package."
-msgstr ""
+msgstr "未安裝模組 PyWBEM。請使用 python-pywbem 套件來安裝 PyWBEM。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:82
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:125
 msgid "Entering create_volume."
-msgstr ""
+msgstr "正在進入 create_volume。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:86
 #, python-format
 msgid "Create Volume: %(volume)s  Size: %(size)lu"
-msgstr ""
+msgstr "建立磁區:%(volume)s 大小:%(size)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:94
 #, python-format
 msgid "Create Volume: %(volume)s  Storage type: %(storage_type)s"
-msgstr ""
+msgstr "建立磁區:%(volume)s 儲存體類型:%(storage_type)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:101
 #, python-format
 msgid ""
 "Create Volume: %(volume)s  Pool: %(pool)s  Storage System: "
 "%(storage_system)s"
-msgstr ""
+msgstr "建立磁區:%(volume)s 儲存區:%(pool)s 儲存體系統:%(storage_system)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:110
 #, python-format
 msgid ""
 "Error Create Volume: %(volumename)s. Storage Configuration Service not "
 "found for pool %(storage_type)s."
-msgstr ""
+msgstr "建立磁區 %(volumename)s 時發生錯誤。找不到儲存區 %(storage_type)s 的「儲存體配置服務」。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:120
 #, python-format
@@ -5836,14 +5924,14 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_smis_common.py:136
 #, python-format
 msgid "Create Volume: %(volumename)s  Return code: %(rc)lu"
-msgstr ""
+msgstr "建立磁區:%(volumename)s 回覆碼:%(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:143
 #, python-format
 msgid ""
 "Error Create Volume: %(volumename)s.  Return code: %(rc)lu.  Error: "
 "%(error)s"
-msgstr ""
+msgstr "建立磁區 %(volumename)s 時發生錯誤。回覆碼:%(rc)lu。錯誤:%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:164
 #, python-format
@@ -5855,14 +5943,14 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_smis_common.py:176
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:348
 msgid "Entering create_volume_from_snapshot."
-msgstr ""
+msgstr "正在進入 create_volume_from_snapshot。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:181
 #, python-format
 msgid ""
 "Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s"
-msgstr ""
+msgstr "從 Snapshot 建立磁區:磁區:%(volumename)s Snapshot:%(snapshotname)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:191
 #, python-format
@@ -5871,6 +5959,8 @@ msgid ""
 "%(snapshotname)s  Snapshot Instance: %(snapshotinstance)s  Storage "
 "System: %(storage_system)s."
 msgstr ""
+"從 Snapshot 建立磁區:磁區:%(volumename)s Snapshot:%(snapshotname)s Snapshot "
+"實例:%(snapshotinstance)s 儲存體系統:%(storage_system)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:201
 #, python-format
@@ -5878,6 +5968,8 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s. Create Volume from Snapshot is NOT supported on VMAX."
 msgstr ""
+"從 Snapshot 建立磁區時發生錯誤:磁區:%(volumename)s Snapshot:%(snapshotname)s。VMAX "
+"上不支援從 Snapshot 建立磁區。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:212
 #, python-format
@@ -5886,6 +5978,8 @@ msgid ""
 "%(snapshotname)s. Cannot find Replication Service to create volume from "
 "snapshot."
 msgstr ""
+"從 Snapshot 建立磁區時發生錯誤:磁區:%(volumename)s "
+"Snapshot:%(snapshotname)s。找不到「抄寫服務」來從 Snapshot 建立磁區。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:221
 #, python-format
@@ -5895,6 +5989,9 @@ msgid ""
 "%(service)s  ElementName: %(elementname)s  SyncType: 8  SourceElement: "
 "%(sourceelement)s"
 msgstr ""
+"從 Snapshot 建立磁區:磁區:%(volumename)s Snapshot:%(snapshotname)s "
+"方法:CreateElementReplica ReplicationService:%(service)s "
+"ElementName:%(elementname)s SyncType:8 SourceElement:%(sourceelement)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:242
 #, python-format
@@ -5902,6 +5999,8 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  "
 "Snapshot:%(snapshotname)s.  Return code: %(rc)lu.Error: %(error)s"
 msgstr ""
+"從 Snapshot 建立磁區時發生錯誤:磁區:%(volumename)s "
+"Snapshot:%(snapshotname)s。回覆碼:%(rc)lu。錯誤:%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:268
 #, python-format
@@ -5910,6 +6009,8 @@ msgid ""
 "%(snapshotname)s.  Successfully clone volume from snapshot.  Finding the "
 "clone relationship."
 msgstr ""
+"從 Snapshot 建立磁區:磁區:%(volumename)s Snapshot:%(snapshotname)s。已順利地從 "
+"Snapshot 複製磁區。正在尋找複本關係。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:280
 #, python-format
@@ -5919,13 +6020,16 @@ msgid ""
 "ModifyReplicaSynchronization ReplicationService: %(service)s  Operation: "
 "8  Synchronization: %(sync_name)s"
 msgstr ""
+"從 Snapshot 建立磁區:磁區:%(volumename)s "
+"Snapshot:%(snapshotname)s。移除複本關係。方法:ModifyReplicaSynchronization "
+"ReplicationService:%(service)s 作業:8 同步化:%(sync_name)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:296
 #, python-format
 msgid ""
 "Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu"
-msgstr ""
+msgstr "從 Snapshot 建立磁區:磁區:%(volumename)s Snapshot:%(snapshotname)s 回覆碼:%(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:305
 #, python-format
@@ -5933,6 +6037,8 @@ msgid ""
 "Error Create Volume from Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s.  Return code: %(rc)lu.  Error: %(error)s"
 msgstr ""
+"從 Snapshot 建立磁區時發生錯誤:磁區:%(volumename)s "
+"Snapshot:%(snapshotname)s。回覆碼:%(rc)lu。錯誤:%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:317
 #, python-format
@@ -5940,17 +6046,19 @@ msgid ""
 "Leaving create_volume_from_snapshot: Volume: %(volumename)s Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu."
 msgstr ""
+"正在離開 create_volume_from_snapshot:磁區:%(volumename)s "
+"Snapshot:%(snapshotname)s 回覆碼:%(rc)lu。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:328
 msgid "Entering create_cloned_volume."
-msgstr ""
+msgstr "正在進入 create_cloned_volume。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:333
 #, python-format
 msgid ""
 "Create a Clone from Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s"
-msgstr ""
+msgstr "從磁區建立複本:磁區:%(volumename)s 來源磁區:%(srcname)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:343
 #, python-format
@@ -5958,13 +6066,15 @@ msgid ""
 "Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
 "  Source Instance: %(src_instance)s  Storage System: %(storage_system)s."
 msgstr ""
+"建立複製的磁區:磁區:%(volumename)s 來源磁區:%(srcname)s 來源實例:%(src_instance)s "
+"儲存體系統:%(storage_system)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:353
 #, python-format
 msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s. Cannot find Replication Service to create cloned volume."
-msgstr ""
+msgstr "建立複製的磁區時發生錯誤:磁區:%(volumename)s 來源磁區:%(srcname)s。找不到「抄寫服務」來建立複製的磁區。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:362
 #, python-format
@@ -5974,13 +6084,16 @@ msgid ""
 "ElementName: %(elementname)s  SyncType: 8  SourceElement: "
 "%(sourceelement)s"
 msgstr ""
+"建立複製的磁區:磁區:%(volumename)s 來源磁區:%(srcname)s 方法:CreateElementReplica "
+"ReplicationService:%(service)s ElementName:%(elementname)s SyncType:8 "
+"SourceElement:%(sourceelement)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:383
 #, python-format
 msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source "
 "Volume:%(srcname)s.  Return code: %(rc)lu.Error: %(error)s"
-msgstr ""
+msgstr "建立複製的磁區時發生錯誤:磁區:%(volumename)s 來源磁區:%(srcname)s。回覆碼:%(rc)lu。錯誤:%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:409
 #, python-format
@@ -5988,7 +6101,7 @@ msgid ""
 "Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s."
 "  Successfully cloned volume from source volume.  Finding the clone "
 "relationship."
-msgstr ""
+msgstr "建立複製的磁區:磁區:%(volumename)s 來源磁區:%(srcname)s。已順利地從來源磁區複製磁區。正在尋找複本關係。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:421
 #, python-format
@@ -5998,54 +6111,57 @@ msgid ""
 "ReplicationService: %(service)s  Operation: 8  Synchronization: "
 "%(sync_name)s"
 msgstr ""
+"建立複製的磁區:磁區:%(volumename)s "
+"來源磁區:%(srcname)s。移除複本關係。方法:ModifyReplicaSynchronization "
+"ReplicationService:%(service)s 作業:8 同步化:%(sync_name)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:437
 #, python-format
 msgid ""
 "Create Cloned Volume: Volume: %(volumename)s  Source Volume: %(srcname)s"
 "  Return code: %(rc)lu"
-msgstr ""
+msgstr "建立複製的磁區:磁區:%(volumename)s 來源磁區:%(srcname)s 回覆碼:%(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:446
 #, python-format
 msgid ""
 "Error Create Cloned Volume: Volume: %(volumename)s  Source Volume: "
 "%(srcname)s.  Return code: %(rc)lu.  Error: %(error)s"
-msgstr ""
+msgstr "建立複製的磁區時發生錯誤:磁區:%(volumename)s 來源磁區:%(srcname)s。回覆碼:%(rc)lu。錯誤:%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:458
 #, python-format
 msgid ""
 "Leaving create_cloned_volume: Volume: %(volumename)s Source Volume: "
 "%(srcname)s  Return code: %(rc)lu."
-msgstr ""
+msgstr "正在離開 create_cloned_volume:磁區:%(volumename)s 來源磁區:%(srcname)s 回覆碼:%(rc)lu。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:469
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:178
 msgid "Entering delete_volume."
-msgstr ""
+msgstr "正在進入 delete_volume。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:471
 #, python-format
 msgid "Delete Volume: %(volume)s"
-msgstr ""
+msgstr "刪除磁區:%(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:478
 #, python-format
 msgid "Volume %(name)s not found on the array. No volume to delete."
-msgstr ""
+msgstr "在陣列上找不到磁區 %(name)s。沒有磁區可以刪除。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:488
 #, python-format
 msgid ""
 "Error Delete Volume: %(volumename)s. Storage Configuration Service not "
 "found."
-msgstr ""
+msgstr "刪除磁區 %(volumename)s 時發生錯誤。找不到「儲存體配置服務」。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:496
 #, python-format
 msgid "Delete Volume: %(name)s  DeviceID: %(deviceid)s"
-msgstr ""
+msgstr "刪除磁區:%(name)s DeviceID:%(deviceid)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:500
 #, python-format
@@ -6053,42 +6169,44 @@ msgid ""
 "Delete Volume: %(name)s  Method: EMCReturnToStoragePool ConfigServic: "
 "%(service)s  TheElement: %(vol_instance)s"
 msgstr ""
+"刪除磁區:%(name)s 方法:EMCReturnToStoragePool ConfigService:%(service)s "
+"TheElement:%(vol_instance)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:514
 #, python-format
 msgid ""
 "Error Delete Volume: %(volumename)s.  Return code: %(rc)lu.  Error: "
 "%(error)s"
-msgstr ""
+msgstr "刪除磁區 %(volumename)s 時發生錯誤。回覆碼:%(rc)lu。錯誤:%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:523
 #, python-format
 msgid "Leaving delete_volume: %(volumename)s  Return code: %(rc)lu"
-msgstr ""
+msgstr "正在離開 delete_volume:%(volumename)s 回覆碼:%(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:530
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:275
 msgid "Entering create_snapshot."
-msgstr ""
+msgstr "正在進入 create_snapshot。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:534
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:278
 #, python-format
 msgid "Create snapshot: %(snapshot)s: volume: %(volume)s"
-msgstr ""
+msgstr "建立 Snapshot:%(snapshot)s:磁區:%(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:544
 #: cinder/volume/drivers/emc/emc_smis_common.py:972
 #, python-format
 msgid "Device ID: %(deviceid)s: Storage System: %(storagesystem)s"
-msgstr ""
+msgstr "裝置 ID:%(deviceid)s:儲存體系統:%(storagesystem)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:551
 #: cinder/volume/drivers/emc/emc_smis_common.py:553
 #: cinder/volume/drivers/emc/emc_smis_common.py:639
 #, python-format
 msgid "Cannot find Replication Service to create snapshot for volume %s."
-msgstr ""
+msgstr "找不到「抄寫服務」來從磁區 %s 建立 Snapshot。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:558
 #, python-format
@@ -6097,13 +6215,16 @@ msgid ""
 "Source: %(volume)s  Replication Service: %(service)s  ElementName: "
 "%(elementname)s  Sync Type: 7  SourceElement: %(sourceelement)s."
 msgstr ""
+"建立 Snapshot:方法:CreateElementReplica:目標:%(snapshot)s 來源:%(volume)s "
+"抄寫服務:%(service)s ElementName:%(elementname)s 同步類型:7 "
+"SourceElement:%(sourceelement)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:574
 #, python-format
 msgid ""
 "Create Snapshot: Volume: %(volumename)s  Snapshot: %(snapshotname)s  "
 "Return code: %(rc)lu"
-msgstr ""
+msgstr "建立 Snapshot:磁區:%(volumename)s Snapshot:%(snapshotname)s 回覆碼:%(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:583
 #, python-format
@@ -6117,32 +6238,32 @@ msgstr ""
 msgid ""
 "Leaving create_snapshot: Snapshot: %(snapshot)s Volume: %(volume)s  "
 "Return code: %(rc)lu."
-msgstr ""
+msgstr "正在離開 create_snapshot:Snapshot:%(snapshot)s 磁區:%(volume)s 回覆碼:%(rc)lu。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:613
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:302
 msgid "Entering delete_snapshot."
-msgstr ""
+msgstr "正在進入 delete_snapshot。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:617
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:306
 #, python-format
 msgid "Delete Snapshot: %(snapshot)s: volume: %(volume)s"
-msgstr ""
+msgstr "刪除 Snapshot:%(snapshot)s:磁區:%(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:623
 #, python-format
 msgid ""
 "Delete Snapshot: %(snapshot)s: volume: %(volume)s. Finding "
 "StorageSychronization_SV_SV."
-msgstr ""
+msgstr "刪除 Snapshot:%(snapshot)s:磁區:%(volume)s。正在尋找 StorageSychronization_SV_SV。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:631
 #, python-format
 msgid ""
 "Snapshot: %(snapshot)s: volume: %(volume)s not found on the array. No "
 "snapshot to delete."
-msgstr ""
+msgstr "Snapshot:%(snapshot)s:在陣列上找不到磁區:%(volume)s。沒有 Snapshot 可以刪除。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:646
 #, python-format
@@ -6151,13 +6272,16 @@ msgid ""
 "ModifyReplicaSynchronization:  Replication Service: %(service)s  "
 "Operation: 19  Synchronization: %(sync_name)s."
 msgstr ""
+"刪除 Snapshot:目標:%(snapshot)s "
+"來源:%(volume)s。方法:ModifyReplicaSynchronization:抄寫服務:%(service)s 作業:19 "
+"同步化:%(sync_name)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:662
 #, python-format
 msgid ""
 "Delete Snapshot: Volume: %(volumename)s  Snapshot: %(snapshotname)s  "
 "Return code: %(rc)lu"
-msgstr ""
+msgstr "刪除 Snapshot:磁區:%(volumename)s Snapshot:%(snapshotname)s 回覆碼:%(rc)lu"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:671
 #, python-format
@@ -6165,6 +6289,8 @@ msgid ""
 "Error Delete Snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s. Return code: %(rc)lu. Error: %(error)s"
 msgstr ""
+"刪除 Snapshot 時發生錯誤:磁區:%(volumename)s "
+"Snapshot:%(snapshotname)s。回覆碼:%(rc)lu。錯誤:%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:696
 #: cinder/volume/drivers/emc/emc_smis_common.py:711
@@ -6192,6 +6318,8 @@ msgid ""
 "Leaving delete_snapshot: Volume: %(volumename)s  Snapshot: "
 "%(snapshotname)s  Return code: %(rc)lu."
 msgstr ""
+"正在離開 delete_snapshot:磁區:%(volumename)s Snapshot:%(snapshotname)s "
+"回覆碼:%(rc)lu。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:745
 #, python-format
@@ -6199,21 +6327,23 @@ msgid ""
 "ExposePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(lun_name)s"
 "  InitiatorPortIDs: %(initiator)s  DeviceAccesses: 2"
 msgstr ""
+"ExposePaths:%(vol)s ConfigService:%(service)s LUNames:%(lun_name)s  "
+"InitiatorPortIDs:%(initiator)s DeviceAccesses:2"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:760
 #, python-format
 msgid "ExposePaths parameter LunMaskingSCSIProtocolController: %(lunmasking)s"
-msgstr ""
+msgstr "ExposePaths 參數 LunMaskingSCSIProtocolController:%(lunmasking)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:771
 #, python-format
 msgid "Error mapping volume %s."
-msgstr ""
+msgstr "對映磁區 %s 時發生錯誤。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:775
 #, python-format
 msgid "ExposePaths for volume %s completed successfully."
-msgstr ""
+msgstr "已順利地完成磁區 %s 的 ExposePaths 作業。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:791
 #, python-format
@@ -6221,16 +6351,18 @@ msgid ""
 "HidePaths: %(vol)s  ConfigServicie: %(service)s  LUNames: %(device_id)s  "
 "LunMaskingSCSIProtocolController: %(lunmasking)s"
 msgstr ""
+"HidePaths:%(vol)s ConfigService:%(service)s LUNames:%(device_id)s "
+"LunMaskingSCSIProtocolController:%(lunmasking)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:804
 #, python-format
 msgid "Error unmapping volume %s."
-msgstr ""
+msgstr "取消對映磁區 %s 時發生錯誤。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:808
 #, python-format
 msgid "HidePaths for volume %s completed successfully."
-msgstr ""
+msgstr "已順利地完成磁區 %s 的 HidePaths 作業。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:821
 #, python-format
@@ -6238,16 +6370,18 @@ msgid ""
 "AddMembers: ConfigServicie: %(service)s  MaskingGroup: %(masking_group)s"
 "  Members: %(vol)s"
 msgstr ""
+"AddMembers:ConfigService:%(service)s MaskingGroup:%(masking_group)s "
+"成員:%(vol)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:836
 #, python-format
 msgid "Error mapping volume %(vol)s. %(error)s"
-msgstr ""
+msgstr "對映磁區 %(vol)s 時發生錯誤。%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:841
 #, python-format
 msgid "AddMembers for volume %s completed successfully."
-msgstr ""
+msgstr "已順利地完成磁區 %s 的 AddMembers 作業。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:854
 #, python-format
@@ -6255,52 +6389,54 @@ msgid ""
 "RemoveMembers: ConfigServicie: %(service)s  MaskingGroup: "
 "%(masking_group)s  Members: %(vol)s"
 msgstr ""
+"RemoveMembers:ConfigService:%(service)s MaskingGroup:%(masking_group)s "
+"成員:%(vol)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:867
 #, python-format
 msgid "Error unmapping volume %(vol)s. %(error)s"
-msgstr ""
+msgstr "取消對映磁區 %(vol)s 時發生錯誤。%(error)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:872
 #, python-format
 msgid "RemoveMembers for volume %s completed successfully."
-msgstr ""
+msgstr "已順利地完成磁區 %s 的 RemoveMembers 作業。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:878
 #, python-format
 msgid "Map volume: %(volume)s"
-msgstr ""
+msgstr "對映磁區:%(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:887
 #: cinder/volume/drivers/emc/emc_smis_common.py:917
 #, python-format
 msgid "Cannot find Controller Configuration Service for storage system %s"
-msgstr ""
+msgstr "找不到儲存體系統 %s 的「控制器配置服務」"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:901
 #, python-format
 msgid "Unmap volume: %(volume)s"
-msgstr ""
+msgstr "取消對映磁區:%(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:907
 #, python-format
 msgid "Volume %s is not mapped. No volume to unmap."
-msgstr ""
+msgstr "未對映磁區 %s。沒有磁區可以取消對映。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:931
 #, python-format
 msgid "Initialize connection: %(volume)s"
-msgstr ""
+msgstr "起始設定連線:%(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:937
 #, python-format
 msgid "Volume %s is already mapped."
-msgstr ""
+msgstr "已對映磁區 %s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:949
 #, python-format
 msgid "Terminate connection: %(volume)s"
-msgstr ""
+msgstr "終止連線:%(volume)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:956
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:197
@@ -6356,16 +6492,16 @@ msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1063
 msgid "Storage type not found."
-msgstr ""
+msgstr "找不到儲存體類型。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1079
 #, python-format
 msgid "Found Masking View: %s"
-msgstr ""
+msgstr "找到「遮罩視圖」:%s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1082
 msgid "Masking View not found."
-msgstr ""
+msgstr "找不到「遮罩視圖」。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1097
 #, python-format
@@ -6378,99 +6514,99 @@ msgstr ""
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1122
 msgid "Ecom user not found."
-msgstr ""
+msgstr "找不到 ECOM 使用者。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1142
 #, python-format
 msgid "Ecom IP: %(ecomIp)s Port: %(ecomPort)s"
-msgstr ""
+msgstr "ECOM IP:%(ecomIp)s 埠:%(ecomPort)s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1146
 msgid "Ecom server not found."
-msgstr ""
+msgstr "找不到 ECOM 伺服器。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1153
 msgid "Cannot connect to ECOM server"
-msgstr ""
+msgstr "無法連接至 ECOM 伺服器"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1165
 #, python-format
 msgid "Found Replication Service: %s"
-msgstr ""
+msgstr "找到「抄寫服務」:%s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1178
 #, python-format
 msgid "Found Storage Configuration Service: %s"
-msgstr ""
+msgstr "找到「儲存體配置服務」:%s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1191
 #, python-format
 msgid "Found Controller Configuration Service: %s"
-msgstr ""
+msgstr "找到「控制器配置服務」:%s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1204
 #, python-format
 msgid "Found Storage Hardware ID Management Service: %s"
-msgstr ""
+msgstr "找到「儲存體硬體 ID 管理服務」:%s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1248
 #, python-format
 msgid "Pool %(storage_type)s is not found."
-msgstr ""
+msgstr "找不到儲存區 %(storage_type)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1254
 #, python-format
 msgid "Storage system not found for pool %(storage_type)s."
-msgstr ""
+msgstr "找不到儲存區 %(storage_type)s 的儲存體系統。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1260
 #, python-format
 msgid "Pool: %(pool)s  SystemName: %(systemname)s."
-msgstr ""
+msgstr "儲存區:%(pool)s SystemName:%(systemname)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1277
 #, python-format
 msgid "Pool name: %(poolname)s  System name: %(systemname)s."
-msgstr ""
+msgstr "儲存區名稱:%(poolname)s 系統名稱:%(systemname)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1292
 #, python-format
 msgid "Volume %(volumename)s not found on the array."
-msgstr ""
+msgstr "在陣列上找不到磁區 %(volumename)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1295
 #, python-format
 msgid "Volume name: %(volumename)s  Volume instance: %(vol_instance)s."
-msgstr ""
+msgstr "磁區名稱:%(volumename)s 磁區實例:%(vol_instance)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1310
 #, python-format
 msgid "Source: %(volumename)s  Target: %(snapshotname)s."
-msgstr ""
+msgstr "來源:%(volumename)s 目標:%(snapshotname)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1322
 #, python-format
 msgid ""
 "Source: %(volumename)s  Target: %(snapshotname)s. Storage Synchronized "
 "not found. "
-msgstr ""
+msgstr "來源:%(volumename)s 目標:%(snapshotname)s。找不到「已同步化的儲存體」。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1327
 #, python-format
 msgid ""
 "Storage system: %(storage_system)s  Storage Synchronized instance: "
 "%(sync)s."
-msgstr ""
+msgstr "儲存體系統:%(storage_system)s 「已同步化的儲存體」實例:%(sync)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1353
 #, python-format
 msgid "Error finding %s."
-msgstr ""
+msgstr "尋找 %s 時發生錯誤。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1357
 #, python-format
 msgid "Found %(name)s: %(initiator)s."
-msgstr ""
+msgstr "找到 %(name)s:%(initiator)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1417
 #, python-format
@@ -6478,6 +6614,8 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage system %(storage_system)s "
 "and initiator %(initiator)s is  %(ctrl)s."
 msgstr ""
+"儲存體系統 %(storage_system)s 及起始器 %(initiator)s 的 "
+"LunMaskingSCSIProtocolController 是 %(ctrl)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1458
 #, python-format
@@ -6485,13 +6623,15 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage volume %(vol)s and initiator"
 " %(initiator)s is  %(ctrl)s."
 msgstr ""
+"儲存磁區 %(vol)s 及起始器 %(initiator)s 的 LunMaskingSCSIProtocolController 是 "
+"%(ctrl)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1472
 #, python-format
 msgid ""
 "Volume %(name)s not found on the array. Cannot determine if there are "
 "volumes mapped."
-msgstr ""
+msgstr "在陣列上找不到磁區 %(name)s。無法判定是否有已對映的磁區。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1484
 #, python-format
@@ -6499,18 +6639,20 @@ msgid ""
 "LunMaskingSCSIProtocolController for storage system %(storage)s and "
 "%(connector)s is %(ctrl)s."
 msgstr ""
+"儲存體系統 %(storage)s 及 %(connector)s 的 LunMaskingSCSIProtocolController 是 "
+"%(ctrl)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1496
 #, python-format
 msgid ""
 "Found %(numVolumesMapped)d volumes on storage system %(storage)s mapped "
 "to %(initiator)s."
-msgstr ""
+msgstr "在儲存體系統 %(storage)s 上找到 %(numVolumesMapped)d 個已對映到 %(initiator)s 的磁區。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1531
 #, python-format
 msgid "Available device number on %(storage)s: %(device)s."
-msgstr ""
+msgstr "%(storage)s 上的可用裝置號碼:%(device)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1556
 #, python-format
@@ -6522,27 +6664,27 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_smis_common.py:1592
 #, python-format
 msgid "Device number not found for volume %(volumename)s %(vol_instance)s."
-msgstr ""
+msgstr "找不到磁區 %(volumename)s %(vol_instance)s 的裝置號碼。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1597
 #, python-format
 msgid "Found device number %(device)d for volume %(volumename)s %(vol_instance)s."
-msgstr ""
+msgstr "找到磁區 %(volumename)s %(vol_instance)s 的裝置號碼 %(device)d。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1607
 #, python-format
 msgid "Device info: %(data)s."
-msgstr ""
+msgstr "裝置資訊:%(data)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1629
 #, python-format
 msgid "Masking view: %(view)s DeviceMaskingGroup: %(masking)s."
-msgstr ""
+msgstr "遮罩視圖:%(view)s DeviceMaskingGroup:%(masking)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1651
 #, python-format
 msgid "Found Storage Processor System: %s"
-msgstr ""
+msgstr "找到「儲存體處理器系統」:%s"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1679
 #, python-format
@@ -6550,52 +6692,54 @@ msgid ""
 "iSCSIProtocolEndpoint for storage system %(storage_system)s and SP %(sp)s"
 " is  %(endpoint)s."
 msgstr ""
+"儲存體系統 %(storage_system)s 及 SP %(sp)s 的 iSCSIProtocolEndpoint 是 "
+"%(endpoint)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1720
 msgid "Error finding Storage Hardware ID Service."
-msgstr ""
+msgstr "尋找「儲存體硬體 ID 服務」時發生錯誤。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1726
 #, python-format
 msgid ""
 "EMCGetTargetEndpoints: Service: %(service)s  Storage HardwareIDs: "
 "%(hardwareids)s."
-msgstr ""
+msgstr "EMCGetTargetEndpoints:服務:%(service)s 儲存體硬體 ID:%(hardwareids)s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1738
 msgid "Error finding Target WWNs."
-msgstr ""
+msgstr "尋找「目標 WWN」時發生錯誤。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1748
 #, python-format
 msgid "Add target WWN: %s."
-msgstr ""
+msgstr "新增目標 WWN:%s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1750
 #, python-format
 msgid "Target WWNs: %s."
-msgstr ""
+msgstr "目標 WWN:%s。"
 
 #: cinder/volume/drivers/emc/emc_smis_common.py:1766
 #, python-format
 msgid "Storage Hardware IDs for %(wwpns)s is %(foundInstances)s."
-msgstr ""
+msgstr "%(wwpns)s 的「儲存體硬體 ID」是 %(foundInstances)s。"
 
-#: cinder/volume/drivers/emc/emc_smis_fc.py:169
-#: cinder/volume/drivers/emc/emc_smis_fc.py:187
+#: cinder/volume/drivers/emc/emc_smis_fc.py:166
+#: cinder/volume/drivers/emc/emc_smis_fc.py:184
 #, python-format
 msgid "Return FC data: %(data)s."
 msgstr ""
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:239
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:236
 #, python-format
 msgid "ISCSI endpoint not found for SP %(sp)s on storage system %(storage)s."
-msgstr ""
+msgstr "在儲存體系統 %(storage)s 上找不到 SP %(sp)s 的 iSCSI 端點。"
 
-#: cinder/volume/drivers/emc/emc_smis_iscsi.py:248
+#: cinder/volume/drivers/emc/emc_smis_iscsi.py:245
 #, python-format
 msgid "ISCSI properties: %s"
-msgstr ""
+msgstr "iSCSI 內容:%s"
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:77
 msgid "Pool name is not specified."
@@ -6676,7 +6820,7 @@ msgstr ""
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:251
 #, python-format
 msgid "create_export: Volume: %(volume)s  Device ID: %(device_id)s"
-msgstr ""
+msgstr "create_export:磁區:%(volume)s 裝置 ID:%(device_id)s"
 
 #: cinder/volume/drivers/emc/emc_vnx_cli.py:292
 #, python-format
@@ -6876,93 +7020,93 @@ msgstr ""
 msgid "No extra spec 'storagetype:provisioning' exist"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:70
+#: cinder/volume/drivers/hds/hds.py:71
 #, python-format
 msgid "Range: start LU: %(start)s, end LU: %(end)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:84
+#: cinder/volume/drivers/hds/hds.py:85
 #, python-format
 msgid "setting LU upper (end) limit to %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:92
+#: cinder/volume/drivers/hds/hds.py:93
 #, python-format
 msgid "%(element)s: %(val)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:103 cinder/volume/drivers/hds/hds.py:105
+#: cinder/volume/drivers/hds/hds.py:104 cinder/volume/drivers/hds/hds.py:106
 #, python-format
 msgid "XML exception reading parameter: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:178
+#: cinder/volume/drivers/hds/hds.py:179
 #, python-format
 msgid "portal: %(ip)s:%(ipp)s, CTL: %(ctl)s, port: %(port)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:197
+#: cinder/volume/drivers/hds/hds.py:198
 #, python-format
 msgid "No configuration found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:250
+#: cinder/volume/drivers/hds/hds.py:251
 #, python-format
 msgid "HDP not found: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:289
+#: cinder/volume/drivers/hds/hds.py:290
 #, python-format
 msgid "iSCSI portal not found for service: %s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:327
+#: cinder/volume/drivers/hds/hds.py:328
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:355
+#: cinder/volume/drivers/hds/hds.py:356
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is cloned."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:372
+#: cinder/volume/drivers/hds/hds.py:373
 #, python-format
 msgid "LUN %(lun)s extended to %(size)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:395
+#: cinder/volume/drivers/hds/hds.py:396
 #, python-format
 msgid "delete lun %(lun)s on %(name)s"
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:480
+#: cinder/volume/drivers/hds/hds.py:481
 #, python-format
 msgid "LUN %(lun)s of size %(sz)s MB is created from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:503
+#: cinder/volume/drivers/hds/hds.py:504
 #, python-format
 msgid "LUN %(lun)s of size %(size)s MB is created as snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/hds/hds.py:522
+#: cinder/volume/drivers/hds/hds.py:523
 #, python-format
 msgid "LUN %s is deleted."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:57
+#: cinder/volume/drivers/huawei/__init__.py:58
 msgid "_instantiate_driver: configuration not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:64
+#: cinder/volume/drivers/huawei/__init__.py:65
 #, python-format
 msgid ""
 "_instantiate_driver: Loading %(protocol)s driver for Huawei OceanStor "
 "%(product)s series storage arrays."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/__init__.py:84
+#: cinder/volume/drivers/huawei/__init__.py:85
 #, python-format
 msgid ""
 "\"Product\" or \"Protocol\" is illegal. \"Product\" should be set to "
@@ -7050,7 +7194,7 @@ msgstr ""
 msgid "parse_xml_file: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/huawei_utils.py:129
+#: cinder/volume/drivers/huawei/huawei_utils.py:128
 #, python-format
 msgid "_get_host_os_type: Host %(ip)s OS type is %(os)s."
 msgstr ""
@@ -7117,7 +7261,7 @@ msgstr ""
 #: cinder/volume/drivers/huawei/rest_common.py:327
 #, python-format
 msgid "create_snapshot:snapshot name:%(snapshot)s, volume name:%(volume)s."
-msgstr ""
+msgstr "create_snapshot:Snapshot 名稱:%(snapshot)s,磁區名稱:%(volume)s。"
 
 #: cinder/volume/drivers/huawei/rest_common.py:354
 #, python-format
@@ -7160,7 +7304,7 @@ msgstr ""
 #: cinder/volume/drivers/huawei/rest_common.py:874
 #, python-format
 msgid "terminate_connection:volume name: %(volume)s, initiator name: %(ini)s."
-msgstr ""
+msgstr "terminate_connection:磁區名稱:%(volume)s,起始器名稱:%(ini)s。"
 
 #: cinder/volume/drivers/huawei/rest_common.py:937
 #, python-format
@@ -7219,7 +7363,7 @@ msgstr ""
 
 #: cinder/volume/drivers/huawei/rest_common.py:1239
 #: cinder/volume/drivers/huawei/ssh_common.py:118
-#: cinder/volume/drivers/huawei/ssh_common.py:1265
+#: cinder/volume/drivers/huawei/ssh_common.py:1263
 #, python-format
 msgid "_check_conf_file: Config file invalid. %s must be set."
 msgstr ""
@@ -7250,12 +7394,12 @@ msgid "No response message. Please check system status."
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:101
-#: cinder/volume/drivers/huawei/ssh_common.py:1249
+#: cinder/volume/drivers/huawei/ssh_common.py:1247
 msgid "do_setup"
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:135
-#: cinder/volume/drivers/huawei/ssh_common.py:1287
+#: cinder/volume/drivers/huawei/ssh_common.py:1285
 #, python-format
 msgid ""
 "_check_conf_file: Config file invalid. Host OSType is invalid.\n"
@@ -7288,7 +7432,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/huawei/ssh_common.py:373
-#: cinder/volume/drivers/huawei/ssh_common.py:1451
+#: cinder/volume/drivers/huawei/ssh_common.py:1449
 #, python-format
 msgid "LUNType must be \"Thin\" or \"Thick\". LUNType:%(type)s"
 msgstr ""
@@ -7299,111 +7443,111 @@ msgid ""
 "Intelligent"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:421
+#: cinder/volume/drivers/huawei/ssh_common.py:419
 #, python-format
 msgid ""
 "_get_maximum_capacity_pool_id: Failed to get pool id. Please check config"
 " file and make sure the StoragePool %s is created in storage array."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:436
+#: cinder/volume/drivers/huawei/ssh_common.py:434
 #, python-format
 msgid "CLI command: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:466
+#: cinder/volume/drivers/huawei/ssh_common.py:464
 #, python-format
 msgid ""
 "_execute_cli: Can not connect to IP %(old)s, try to connect to the other "
 "IP %(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:501
+#: cinder/volume/drivers/huawei/ssh_common.py:499
 #, python-format
 msgid "_execute_cli: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:511
+#: cinder/volume/drivers/huawei/ssh_common.py:509
 #, python-format
 msgid "delete_volume: volume name: %s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:516
+#: cinder/volume/drivers/huawei/ssh_common.py:514
 #, python-format
 msgid "delete_volume: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:570
+#: cinder/volume/drivers/huawei/ssh_common.py:568
 #, python-format
 msgid ""
 "create_volume_from_snapshot: snapshot name: %(snapshot)s, volume name: "
 "%(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:580
+#: cinder/volume/drivers/huawei/ssh_common.py:578
 #, python-format
 msgid "create_volume_from_snapshot: Snapshot %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:650
+#: cinder/volume/drivers/huawei/ssh_common.py:648
 #, python-format
 msgid "_wait_for_luncopy: LUNcopy %(luncopyname)s status is %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:688
+#: cinder/volume/drivers/huawei/ssh_common.py:686
 #, python-format
 msgid "create_cloned_volume: src volume: %(src)s, tgt volume: %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:697
+#: cinder/volume/drivers/huawei/ssh_common.py:695
 #, python-format
 msgid "Source volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:739
+#: cinder/volume/drivers/huawei/ssh_common.py:737
 #, python-format
 msgid ""
 "extend_volume: extended volume name: %(extended_name)s new added volume "
 "name: %(added_name)s new added volume size: %(added_size)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:747
+#: cinder/volume/drivers/huawei/ssh_common.py:745
 #, python-format
 msgid "extend_volume: volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:779
+#: cinder/volume/drivers/huawei/ssh_common.py:777
 #, python-format
 msgid "create_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:785
+#: cinder/volume/drivers/huawei/ssh_common.py:783
 msgid "create_snapshot: Resource pool needs 1GB valid size at least."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:792
+#: cinder/volume/drivers/huawei/ssh_common.py:790
 #, python-format
 msgid "create_snapshot: Volume %(name)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:855
+#: cinder/volume/drivers/huawei/ssh_common.py:853
 #, python-format
 msgid "delete_snapshot: snapshot name: %(snapshot)s, volume name: %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:865
+#: cinder/volume/drivers/huawei/ssh_common.py:863
 #, python-format
 msgid ""
 "delete_snapshot: Can not delete snapshot %s for it is a source LUN of "
 "LUNCopy."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:873
+#: cinder/volume/drivers/huawei/ssh_common.py:871
 #, python-format
 msgid "delete_snapshot: Snapshot %(snap)s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:916
+#: cinder/volume/drivers/huawei/ssh_common.py:914
 #, python-format
 msgid ""
 "%(func)s: %(msg)s\n"
@@ -7411,77 +7555,77 @@ msgid ""
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:933
+#: cinder/volume/drivers/huawei/ssh_common.py:931
 #, python-format
 msgid "map_volume: Volume %s was not found."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1079
+#: cinder/volume/drivers/huawei/ssh_common.py:1077
 #, python-format
 msgid "change_lun_ctr: Changing LUN %(lun)s ctr to %(ctr)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1102
+#: cinder/volume/drivers/huawei/ssh_common.py:1100
 #, python-format
 msgid "remove_map: Host %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1106
+#: cinder/volume/drivers/huawei/ssh_common.py:1104
 #, python-format
 msgid "remove_map: Volume %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1119
+#: cinder/volume/drivers/huawei/ssh_common.py:1117
 #, python-format
 msgid "remove_map: No map between host %(host)s and volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1138
+#: cinder/volume/drivers/huawei/ssh_common.py:1136
 #, python-format
 msgid ""
 "_delete_map: There are IOs accessing the system. Retry to delete host map"
 " %(mapid)s 10s later."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1146
+#: cinder/volume/drivers/huawei/ssh_common.py:1144
 #, python-format
 msgid ""
 "_delete_map: Failed to delete host map %(mapid)s.\n"
 "CLI out: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1185
+#: cinder/volume/drivers/huawei/ssh_common.py:1183
 msgid "_update_volume_stats: Updating volume stats."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1277
+#: cinder/volume/drivers/huawei/ssh_common.py:1275
 msgid "_check_conf_file: Config file invalid. StoragePool must be specified."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1311
+#: cinder/volume/drivers/huawei/ssh_common.py:1309
 msgid ""
 "_get_device_type: The driver only supports Dorado5100 and Dorado 2100 G2 "
 "now."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1389
+#: cinder/volume/drivers/huawei/ssh_common.py:1387
 #, python-format
 msgid ""
 "create_volume_from_snapshot: %(device)s does not support create volume "
 "from snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1396
+#: cinder/volume/drivers/huawei/ssh_common.py:1394
 #, python-format
 msgid "create_cloned_volume: %(device)s does not support clone volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1404
+#: cinder/volume/drivers/huawei/ssh_common.py:1402
 #, python-format
 msgid "extend_volume: %(device)s does not support extend volume."
 msgstr ""
 
-#: cinder/volume/drivers/huawei/ssh_common.py:1413
+#: cinder/volume/drivers/huawei/ssh_common.py:1411
 #, python-format
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
@@ -7635,97 +7779,97 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:85
+#: cinder/volume/drivers/ibm/ibmnas.py:87
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:232
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:669
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:175
 #, python-format
 msgid "%s is not set"
-msgstr ""
+msgstr "未設定 %s"
 
-#: cinder/volume/drivers/ibm/ibmnas.py:91
+#: cinder/volume/drivers/ibm/ibmnas.py:93
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "nas_password or nas_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:97
+#: cinder/volume/drivers/ibm/ibmnas.py:99
 #, python-format
 msgid "Enter _get_provider_location: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:104
+#: cinder/volume/drivers/ibm/ibmnas.py:106
 #, python-format
 msgid "Enter _get_export_path: volume_id %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:110
+#: cinder/volume/drivers/ibm/ibmnas.py:112
 msgid "Enter _update_volume_stats"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:136
+#: cinder/volume/drivers/ibm/ibmnas.py:138
 #, python-format
 msgid "Enter _create_ibmnas_snap: src %(src)s, dest %(dest)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:144
+#: cinder/volume/drivers/ibm/ibmnas.py:146
 #, python-format
 msgid "Failed in _create_ibmnas_snap during create_snapshot. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:158
+#: cinder/volume/drivers/ibm/ibmnas.py:160
 #, python-format
 msgid ""
 "Failed in _create_ibmnas_snap during create_volume_from_snapshot. Error: "
 "%s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:166
+#: cinder/volume/drivers/ibm/ibmnas.py:168
 #, python-format
 msgid "Enter _create_ibmnas_copy: src %(src)s, dest %(dest)s, snap %(snap)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:174
+#: cinder/volume/drivers/ibm/ibmnas.py:176
 #, python-format
 msgid "Failed in _create_ibmnas_copy. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:181
+#: cinder/volume/drivers/ibm/ibmnas.py:183
 #: cinder/volume/drivers/netapp/nfs.py:485
 #, python-format
 msgid "Resizing file to %sG"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:185
+#: cinder/volume/drivers/ibm/ibmnas.py:187
 #, python-format
 msgid "Failed to resize volume %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:195
+#: cinder/volume/drivers/ibm/ibmnas.py:197
 #: cinder/volume/drivers/netapp/nfs.py:611
 #, python-format
 msgid "Extending volume %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:200
+#: cinder/volume/drivers/ibm/ibmnas.py:202
 #, python-format
 msgid "Enter _delete_snapfiles: fchild %(fchild)s, mount_point %(mount_point)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:208
+#: cinder/volume/drivers/ibm/ibmnas.py:210
 #, python-format
 msgid "Failed in _delete_snapfiles. Error: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/ibmnas.py:246
+#: cinder/volume/drivers/ibm/ibmnas.py:248
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping."
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:143
 msgid "enter: do_setup"
-msgstr ""
+msgstr "進入:do_setup"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:153
 #, python-format
@@ -7738,11 +7882,11 @@ msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:214
 msgid "leave: do_setup"
-msgstr ""
+msgstr "離開:do_setup"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:218
 msgid "enter: check_for_setup_error"
-msgstr ""
+msgstr "進入:check_for_setup_error"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:222
 msgid "Unable to determine system name"
@@ -7756,23 +7900,23 @@ msgstr ""
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
-msgstr ""
+msgstr "鑑別需要密碼或 SSH 私密金鑰:請設定 san_password 或 san_private_key 選項"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:246
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
-msgstr ""
+msgstr "指定給 storwize_svc_flashcopy_timeout 的值 %d 不正確:有效值介於 0 和 600 之間"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
 msgid "leave: check_for_setup_error"
-msgstr ""
+msgstr "離開:check_for_setup_error"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:264
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
-msgstr ""
+msgstr "ensure_export:在儲存體上找不到磁區 %s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:283
 msgid "The connector does not contain the required information."
@@ -7781,7 +7925,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:307
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "進入:initialize_connection:磁區 %(vol)s(透過連接器 %(conn)s)"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:338
 msgid "CHAP secret exists for host but CHAP is disabled"
@@ -7790,29 +7934,29 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:343
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
-msgstr ""
+msgstr "initialize_connection:無法取得磁區 %s 的屬性"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:355
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
-msgstr ""
+msgstr "在 lsvdisk 中找不到預期的直欄名稱:%s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:357
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
-msgstr ""
+msgstr "initialize_connection:遺漏了磁區 %s 的磁區屬性"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:374
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
-msgstr ""
+msgstr "initialize_connection:在磁區 %(vol)s 的 I/O 群組 %(gid)s 中找不到節點"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
-msgstr ""
+msgstr "initialize_connection:找不到磁區 %s 的偏好節點"
 
 #: cinder/volume/drivers/ibm/storwize_svc/__init__.py:406
 msgid ""
@@ -7820,14 +7964,21 @@ msgid ""
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#, python-format
+msgid ""
+"Unable to find a preferred node match for node %(node)s in the list of "
+"available WWPNs on %(host)s. Using first available."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:437
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
-msgstr ""
+msgstr "initialize_connection:無法收集磁區 %(vol)s 及連接器 %(conn)s 的傳回內容。\n"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:430
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:442
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7835,101 +7986,110 @@ msgid ""
 " connector %(conn)s\n"
 " properties: %(prop)s"
 msgstr ""
+"離開:initialize_connection:\n"
+" 磁區:%(vol)s\n"
+" 連接器 %(conn)s\n"
+" 內容:%(prop)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:457
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:469
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "進入:terminate_connection:磁區 %(vol)s(透過連接器 %(conn)s)"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:464
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:486
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:482
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:504
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
-msgstr ""
+msgstr "離開:terminate_connection:磁區 %(vol)s(透過連接器 %(conn)s)"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:530
 msgid "create_snapshot: get source volume failed."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:514
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:543
 msgid "create_volume_from_snapshot: Source and destination size differ."
-msgstr ""
+msgstr "create_volume_from_snapshot:來源及目的地大小不同。"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:526
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:555
 msgid "create_cloned_volume: Source and destination size differ."
-msgstr ""
+msgstr "create_cloned_volume:來源及目的地大小不同。"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:537
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:566
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:541
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:570
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:548
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:577
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:584
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:613
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %s does not have any registered vdisk copy "
 "operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:589
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:618
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s does not have the specified vdisk copy "
 "operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:601
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:630
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume metadata %s does not have any registered vdisk "
 "copy operations."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:609
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:638
 #, python-format
 msgid ""
 "_rm_vdisk_copy_op: Volume %(vol)s metadata does not have the specified "
 "vdisk copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:656
 msgid "enter: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:637
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#, python-format
+msgid "Volume %s does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:675
 #, python-format
 msgid ""
 "_check_volume_copy_ops: Volume %(vol)s does not have the specified vdisk "
 "copy operation: orig=%(orig)s new=%(new)s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:648
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:686
 msgid "exit: update volume copy status"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:663
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:701
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:682
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:721
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:699
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:743
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:406
 #, python-format
 msgid ""
@@ -7937,31 +8097,38 @@ msgid ""
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:740
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:787
+#, python-format
+msgid ""
+"Unable to retype:  A copy of volume %s exists. Retyping would exceed the "
+"limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:797
 #, 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:757
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:783
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:814
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:840
 msgid "No vdisk with the specified vdisk_UID."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:776
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:833
 msgid "Reference must contain vdisk_UID element."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:791
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:848
 msgid "The specified vdisk is mapped to a host."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:831
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:888
 msgid "Could not get pool data from the storage"
-msgstr ""
+msgstr "無法從儲存體取得儲存區資料"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:832
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:889
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -8063,34 +8230,34 @@ msgstr ""
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
-msgstr ""
+msgstr "指定給 storwize_svc_vol_rsize 的值不正確:應設為百分比 (0-100) 或 -1"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:388
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
-msgstr ""
+msgstr "指定給 storwize_svc_vol_warning 的值不正確:應設為百分比 (0-100)"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:395
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
-msgstr ""
+msgstr "指定給 storwize_svc_vol_grainsize 的值不正確:應設為 32、64、128 或 256"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
 msgid "System does not support compression"
-msgstr ""
+msgstr "系統不支援壓縮"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:407
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
-msgstr ""
+msgstr "如果壓縮設為 True,則也必須設定調整大小(不等於 -1)"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:413
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
-msgstr ""
+msgstr "指定給 storwize_svc_connection_protocol 的值 %(prot)s 不正確:有效值為 %(enabled)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:422
 #, python-format
@@ -8109,7 +8276,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:504
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
-msgstr ""
+msgstr "離開:_create_vdisk:磁區 %s "
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:531
 #, python-format
@@ -8145,7 +8312,7 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:601
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
-msgstr ""
+msgstr "Vdisk %(name)s 並未參與對映 %(src)s -> %(tgt)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:637
 #, python-format
@@ -8182,15 +8349,22 @@ msgstr ""
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:686
+#, python-format
+msgid ""
+"add_vdisk_copy failed: A copy of volume %s exists. Adding another copy "
+"would exceed the limit of 2 copies."
+msgstr ""
+
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:693
 msgid "add_vdisk_copy started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:741
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:742
 #, python-format
 msgid ""
-"Ignore change IO group as storage code level is %(code_level)s, below "
-"then 6.4.0.0"
+"Ignore change IO group as storage code level is %(code_level)s, below the"
+" required 6.4.0.0"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/helpers.py:762
@@ -8202,18 +8376,17 @@ msgstr ""
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:213
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:250
-#, fuzzy, python-format
+#, python-format
 msgid ""
 "CLI Exception output:\n"
 " command: %(cmd)s\n"
 " stdout: %(out)s\n"
 " stderr: %(err)s"
 msgstr ""
-"%(description)s\n"
-"命令: %(cmd)s\n"
-"退出代碼: %(exit_code)s\n"
-"標準輸出: %(stdout)r\n"
-"標準錯誤輸出: %(stderr)r"
+"CLI 異常狀況輸出:\n"
+" 指令:%(cmd)s\n"
+" 標準輸出:%(out)s\n"
+" 標準錯誤:%(err)s"
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:53
 #, python-format
@@ -8245,12 +8418,12 @@ msgid ""
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:353
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:361
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:388
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:396
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -8321,36 +8494,36 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:69
 #, python-format
 msgid "No metadata property %(prop)s defined for the LUN %(name)s"
-msgstr ""
+msgstr "未給 LUN %(name)s 定義任何 meta 資料內容 %(prop)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:105
 #, python-format
 msgid "Using NetApp filer: %s"
-msgstr ""
+msgstr "正在使用 NetApp filer:%s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:150
 msgid "Success getting LUN list from server"
-msgstr ""
+msgstr "已順利地從伺服器取得 LUN 清單"
 
 #: cinder/volume/drivers/netapp/iscsi.py:166
 #, python-format
 msgid "Created LUN with name %s"
-msgstr ""
+msgstr "已使用名稱 %s 建立了 LUN"
 
 #: cinder/volume/drivers/netapp/iscsi.py:175
 #, python-format
 msgid "No entry in LUN table for volume/snapshot %(name)s."
-msgstr ""
+msgstr "磁區/Snapshot %(name)s 的 LUN 表格中沒有項目。"
 
 #: cinder/volume/drivers/netapp/iscsi.py:191
 #, python-format
 msgid "Destroyed LUN %s"
-msgstr ""
+msgstr "已毀損 LUN %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:227
 #, python-format
 msgid "Mapped LUN %(name)s to the initiator %(initiator_name)s"
-msgstr ""
+msgstr "已將 LUN %(name)s 對映到起始器 %(initiator_name)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
@@ -8362,22 +8535,22 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:238
 #, python-format
 msgid "Failed to get LUN target details for the LUN %s"
-msgstr ""
+msgstr "無法取得 LUN %s 的 LUN 目標詳細資料"
 
 #: cinder/volume/drivers/netapp/iscsi.py:249
 #, python-format
 msgid "Failed to get target portal for the LUN %s"
-msgstr ""
+msgstr "無法取得 LUN %s 的目標入口網站"
 
 #: cinder/volume/drivers/netapp/iscsi.py:252
 #, python-format
 msgid "Failed to get target IQN for the LUN %s"
-msgstr ""
+msgstr "無法取得 LUN %s 的目標 IQN"
 
 #: cinder/volume/drivers/netapp/iscsi.py:290
 #, python-format
 msgid "Snapshot %s deletion successful"
-msgstr ""
+msgstr "已順利地刪除 Snapshot %s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:310
 #: cinder/volume/drivers/netapp/iscsi.py:557
@@ -8390,21 +8563,21 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:325
 #, python-format
 msgid "Unmapped LUN %(name)s from the initiator %(initiator_name)s"
-msgstr ""
+msgstr "已從起始器 %(initiator_name)s 取消對映 LUN %(name)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:414
 #, python-format
 msgid "Error mapping lun. Code :%(code)s, Message:%(message)s"
-msgstr ""
+msgstr "對映 LUN 時發生錯誤。程式碼:%(code)s,訊息:%(message)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:433
 #, python-format
 msgid "Error unmapping lun. Code :%(code)s, Message:%(message)s"
-msgstr ""
+msgstr "取消對映 LUN 時發生錯誤。程式碼:%(code)s,訊息:%(message)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:503
 msgid "Object is not a NetApp LUN."
-msgstr ""
+msgstr "物件不是 NetApp LUN。"
 
 #: cinder/volume/drivers/netapp/iscsi.py:535
 #, python-format
@@ -8503,12 +8676,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:841
 #, python-format
 msgid "No iscsi service found for vserver %s"
-msgstr ""
+msgstr "找不到 vserver %s 的任何 iSCSI 服務"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1008
 #, python-format
 msgid "Cloned LUN with new name %s"
-msgstr ""
+msgstr "已使用新名稱 %s 來複製了 LUN"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1012
 #, python-format
@@ -8531,9 +8704,9 @@ msgid "Api version could not be determined."
 msgstr ""
 
 #: cinder/volume/drivers/netapp/iscsi.py:1190
-#, fuzzy, python-format
+#, python-format
 msgid "Failed to get vol with required size for volume: %s"
-msgstr "找不到Volume %s"
+msgstr "無法取得具有所需磁區大小的磁區:%s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1299
 #, python-format
@@ -8543,12 +8716,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:1443
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s completed"
-msgstr ""
+msgstr "來源為 %(name)s 且目的地為 %(new_name)s 的複製作業已完成"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1446
 #, python-format
 msgid "Clone operation with src %(name)s and dest %(new_name)s failed"
-msgstr ""
+msgstr "來源為 %(name)s 且目的地為 %(new_name)s 的複製作業失敗"
 
 #: cinder/volume/drivers/netapp/iscsi.py:1509
 msgid "Volume refresh job already running. Returning..."
@@ -8687,7 +8860,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:460
 #, python-format
 msgid "Converted to raw, but format is now %s"
-msgstr ""
+msgstr "已轉換為原始,但格式現在為 %s"
 
 #: cinder/volume/drivers/netapp/nfs.py:470
 #, python-format
@@ -8765,7 +8938,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:866
 #, python-format
 msgid "No interface found on cluster for ip %s"
-msgstr ""
+msgstr "在叢集上找不到 IP %s 的介面"
 
 #: cinder/volume/drivers/netapp/nfs.py:907
 #, python-format
@@ -8910,12 +9083,12 @@ msgstr ""
 #: cinder/volume/drivers/netapp/nfs.py:1349
 #, python-format
 msgid "No storage path found for export path %s"
-msgstr ""
+msgstr "找不到匯出路徑 %s 的儲存體路徑"
 
 #: cinder/volume/drivers/netapp/nfs.py:1359
 #, python-format
 msgid "Cloning with src %(src_path)s, dest %(dest_path)s"
-msgstr ""
+msgstr "正在使用下列參數進行複製:來源 %(src_path)s 及目的地 %(dest_path)s"
 
 #: cinder/volume/drivers/netapp/ssc_utils.py:241
 #, python-format
@@ -9284,7 +9457,7 @@ msgstr ""
 #: cinder/volume/drivers/nexenta/iscsi.py:105
 #, python-format
 msgid "Volume %s does not exist in Nexenta SA"
-msgstr ""
+msgstr "磁區 %s 不存在於 Nexenta SA 中"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:151
 #, python-format
@@ -9360,10 +9533,10 @@ msgid "Snapshot %s does not exist, it seems it was already deleted."
 msgstr ""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:476
-#: cinder/volume/drivers/windows/windows_utils.py:230
+#: cinder/volume/drivers/windows/windows_utils.py:237
 #, python-format
 msgid "Ignored target creation error \"%s\" while ensuring export"
-msgstr ""
+msgstr "已忽略確定匯出時發生的目標建立錯誤 \"%s\""
 
 #: cinder/volume/drivers/nexenta/iscsi.py:486
 #, python-format
@@ -9390,37 +9563,37 @@ msgstr ""
 msgid ""
 "Got error trying to destroy target group %(target_group)s, assuming it is"
 " already gone: %(exc)s"
-msgstr ""
+msgstr "嘗試毀損目標群組 %(target_group)s 時發生錯誤,將假定它已消失:%(exc)s"
 
 #: cinder/volume/drivers/nexenta/iscsi.py:559
 #, python-format
 msgid ""
 "Got error trying to delete target %(target)s, assuming it is already "
 "gone: %(exc)s"
-msgstr ""
+msgstr "嘗試刪除目標 %(target)s 時發生錯誤,將假定它已消失:%(exc)s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:83
 #, python-format
 msgid "Sending JSON data: %s"
-msgstr ""
+msgstr "正在傳送 JSON 資料:%s"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:88
 msgid "No headers in server response"
-msgstr ""
+msgstr "伺服器回應中沒有標頭"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:89
 msgid "Bad response from server"
-msgstr ""
+msgstr "伺服器傳回錯誤的回應"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:90
 #, python-format
 msgid "Auto switching to HTTPS connection to %s"
-msgstr ""
+msgstr "自動切換至 %s 的 HTTPS 連線"
 
 #: cinder/volume/drivers/nexenta/jsonrpc.py:96
 #, python-format
 msgid "Got response: %s"
-msgstr ""
+msgstr "已取得回應:%s"
 
 #: cinder/volume/drivers/nexenta/nfs.py:85
 #, python-format
@@ -9483,290 +9656,294 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/san.py:169
+#: cinder/volume/drivers/san/san.py:168
 msgid "Specify san_password or san_private_key"
-msgstr ""
+msgstr "指定 san_password 或 san_private_key"
 
-#: cinder/volume/drivers/san/san.py:173
+#: cinder/volume/drivers/san/san.py:172
 msgid "san_ip must be set"
-msgstr ""
+msgstr "必須設定 san_ip"
 
-#: cinder/volume/drivers/san/solaris.py:79
+#: cinder/volume/drivers/san/solaris.py:78
 #, python-format
 msgid "Cannot parse list-view output: %s"
-msgstr ""
+msgstr "無法剖析清單視圖輸出:%s"
 
-#: cinder/volume/drivers/san/solaris.py:174
+#: cinder/volume/drivers/san/solaris.py:173
 #, python-format
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
-msgstr ""
+msgstr "找不到 %(zfs_poolname)s 的 LUID。輸出 = %(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:178
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid ""
 "Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
 "greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:200
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:206
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:214
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+msgid "You must install hp3parclient before using 3PAR drivers."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:223
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:232
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:442
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:241
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:466
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
-msgstr ""
+msgstr "陣列上不存在 CPG (%s)"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:240
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:249
 #, 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:253
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:262
 #, python-format
 msgid "Extending Volume %(vol)s from %(old)s to %(new)s,  by %(diff)s GB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:264
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:273
 msgid "Converting to base volume prior to growing."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:283
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:292
 #, python-format
 msgid "Error extending volume: %(vol)s. Exception: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:463
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:493
 #, python-format
 msgid "3PAR vlun %(name)s not found on host %(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:593
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:622
 #, python-format
 msgid "Error creating QOS rule %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:602
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:631
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:644
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:673
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
-msgstr ""
+msgstr "必須指定有效的 persona %(valid)s,值 '%(persona)s' 無效。"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:695
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:724
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
-msgstr ""
+msgstr "必須指定有效的供應類型 %(valid)s,值 '%(prov)s' 無效。"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:763
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:792
 #, python-format
 msgid "Volume (%s) already exists on array"
-msgstr ""
+msgstr "陣列上已存在磁區 (%s)"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:782
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:811
 #, python-format
 msgid "Creating clone of a volume %(src)s to %(dest)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:839
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:868
 #, python-format
 msgid "Found an online copy for %(volume)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:876
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:905
 #, python-format
 msgid "Delete volume id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:939
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:968
 #, python-format
 msgid "Converting to base volume type: %s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:943
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:972
 #, python-format
 msgid "Growing volume: %(id)s by %(size)s GiB."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:947
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:976
 #, python-format
 msgid "Error extending volume %(id)s. Ex: %(ex)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1060
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1045
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1074
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1057
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1065
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1094
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1080
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1086
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1115
 #, python-format
 msgid "Volume is attached: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1102
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1131
 #, python-format
 msgid "Dest does not match: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1109
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1138
 #, python-format
 msgid "CPGs are the same: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1117
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1146
 #, python-format
 msgid "CPGs in different domains: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1125
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1154
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1145
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1174
 #, python-format
 msgid "Copy volume scheduled: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1165
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1194
 #, python-format
 msgid ""
 "Copy volume task failed: convert_to_base_volume: id=%(id)s, "
 "status=%(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1169
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1198
 #, python-format
 msgid "Copy volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1175
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1204
 #, python-format
 msgid "Volume rename completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1180
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1209
 #, python-format
 msgid "Delete src volume completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1186
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1215
 #, python-format
 msgid "Completed: convert_to_base_volume: id=%s."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1189
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
 #, python-format
 msgid "Volume (%s) already exists on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1218
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:1247
 #, python-format
 msgid "Delete Snapshot id not found. Removing from cinder: %(id)s Ex: %(msg)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:127
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:130
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:161
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
 #, 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:167
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:170
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:269
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:272
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:92
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:93
 #, python-format
 msgid "CLIQ %(proxy_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:107
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:108
 #, python-format
 msgid "CLIQ command returned %s"
-msgstr ""
+msgstr "CLIQ 指令傳回了 %s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:113
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:114
 #, python-format
 msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
+msgstr "對 CLIQ 指令 %(verb)s %(cliq_args)s 的回應格式不正確。結果 = %(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:121
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:122
 #, python-format
 msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
+msgstr "執行 CLIQ 指令 %(verb)s %(cliq_args)s 時發生錯誤。結果 = %(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:151
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:152
 #, python-format
 msgid ""
 "Unexpected number of virtual ips for cluster  %(cluster_name)s. "
 "Result=%(_xml)s"
-msgstr ""
+msgstr "叢集 %(cluster_name)s 的虛擬 IP 數目不符合預期。結果 = %(_xml)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:204
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:205
 #, python-format
 msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
+msgstr "磁區資訊:%(volume_name)s => %(volume_attributes)s"
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:260
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:261
 #, python-format
 msgid "Snapshot info: %(name)s => %(attributes)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:318
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:319
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:184
 msgid "Volume did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:330
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:331
 #: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:217
 msgid "Snapshot did not exist. It will not be deleted"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:342
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:343
 msgid "local_path not supported"
-msgstr ""
+msgstr "不支援 local_path"
 
 #: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:75
 #, python-format
@@ -10158,7 +10335,7 @@ msgid "%s not set."
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:206
-#: cinder/volume/drivers/vmware/vmdk.py:1190
+#: cinder/volume/drivers/vmware/vmdk.py:1194
 #, python-format
 msgid "Successfully setup driver: %(driver)s for server: %(ip)s."
 msgstr ""
@@ -10318,7 +10495,7 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/vmware/vmdk.py:764
-#: cinder/volume/drivers/vmware/vmdk.py:1306
+#: cinder/volume/drivers/vmware/vmdk.py:1310
 #, python-format
 msgid ""
 "There is no snapshot point for the snapshotted volume: %(snap)s. Not "
@@ -10438,62 +10615,62 @@ msgstr ""
 msgid "Not able to relocate volume %s for extending."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1140
+#: cinder/volume/drivers/vmware/vmdk.py:1144
 #, python-format
 msgid "PBM WSDL file %s is missing!"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1143
+#: cinder/volume/drivers/vmware/vmdk.py:1147
 #, python-format
 msgid "Using PBM WSDL location: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1154
+#: cinder/volume/drivers/vmware/vmdk.py:1158
 #, python-format
 msgid "Using overridden vmware_host_version from config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1158
+#: cinder/volume/drivers/vmware/vmdk.py:1162
 #, python-format
 msgid "Fetched VC server version: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1165
+#: cinder/volume/drivers/vmware/vmdk.py:1169
 #, python-format
 msgid "Version string '%s' is not parseable"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1179
+#: cinder/volume/drivers/vmware/vmdk.py:1183
 #, python-format
 msgid "Not able to configure PBM for VC server: %s"
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1238
+#: cinder/volume/drivers/vmware/vmdk.py:1242
 #, python-format
 msgid "Relocating volume: %(backing)s to %(ds)s and %(rp)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1284
+#: cinder/volume/drivers/vmware/vmdk.py:1288
 #: cinder/volume/drivers/vmware/volumeops.py:673
 #, python-format
 msgid "Successfully created clone: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1298
+#: cinder/volume/drivers/vmware/vmdk.py:1302
 #, python-format
 msgid ""
 "There is no backing for the snapshotted volume: %(snap)s. Not creating "
 "any backing for the volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1335
+#: cinder/volume/drivers/vmware/vmdk.py:1339
 #, python-format
 msgid ""
 "There is no backing for the source volume: %(src)s. Not creating any "
 "backing for volume: %(vol)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/vmdk.py:1343
+#: cinder/volume/drivers/vmware/vmdk.py:1347
 #, python-format
 msgid "Linked clone of source volume not supported in state: %s."
 msgstr ""
@@ -10719,7 +10896,7 @@ msgstr ""
 
 #: cinder/volume/drivers/vmware/volumeops.py:744
 msgid "Copying disk data before snapshot of the VM"
-msgstr ""
+msgstr "在建立 VM 的 Snapshot 之前複製磁碟資料"
 
 #: cinder/volume/drivers/vmware/volumeops.py:754
 #, python-format
@@ -10778,7 +10955,7 @@ msgstr ""
 #: cinder/volume/drivers/windows/windows.py:102
 #, python-format
 msgid "Creating folder %s "
-msgstr ""
+msgstr "正在建立資料夾 %s"
 
 #: cinder/volume/drivers/windows/windows_utils.py:47
 #, python-format
@@ -10805,7 +10982,7 @@ msgid ""
 "retrieved. WMI exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:105
+#: cinder/volume/drivers/windows/windows_utils.py:107
 #, python-format
 msgid ""
 "associate_initiator_with_iscsi_target: an association between initiator: "
@@ -10813,35 +10990,40 @@ msgid ""
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:123
+#: cinder/volume/drivers/windows/windows_utils.py:125
 #, python-format
 msgid ""
 "delete_iscsi_target: error when deleting the iscsi target associated with"
 " target name: %(target)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:139
+#: cinder/volume/drivers/windows/windows_utils.py:141
 #, python-format
 msgid ""
 "create_volume: error when creating the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:157
+#: cinder/volume/drivers/windows/windows_utils.py:153
+#, python-format
+msgid "Skipping deleting disk %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:164
 #, python-format
 msgid ""
 "delete_volume: error when deleting the volume name: %(vol_name)s . WMI "
 "exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:177
+#: cinder/volume/drivers/windows/windows_utils.py:184
 #, python-format
 msgid ""
 "create_snapshot: error when creating the snapshot name: %(vol_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:193
+#: cinder/volume/drivers/windows/windows_utils.py:200
 #, python-format
 msgid ""
 "create_volume_from_snapshot: error when creating the volume name: "
@@ -10849,42 +11031,47 @@ msgid ""
 "%(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:208
+#: cinder/volume/drivers/windows/windows_utils.py:215
 #, python-format
 msgid ""
 "delete_snapshot: error when deleting the snapshot name: %(snap_name)s . "
 "WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:223
+#: cinder/volume/drivers/windows/windows_utils.py:230
 #, python-format
 msgid ""
 "create_iscsi_target: error when creating iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:240
+#: cinder/volume/drivers/windows/windows_utils.py:245
+#, python-format
+msgid "Skipping removing target %s as it does not exist."
+msgstr ""
+
+#: cinder/volume/drivers/windows/windows_utils.py:252
 #, python-format
 msgid ""
 "remove_iscsi_target: error when deleting iscsi target: %(tar_name)s . WMI"
 " exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:255
+#: cinder/volume/drivers/windows/windows_utils.py:267
 #, python-format
 msgid ""
 "add_disk_to_target: error adding disk associated to volume : %(vol_name)s"
 " to the target name: %(tar_name)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:273
+#: cinder/volume/drivers/windows/windows_utils.py:285
 #, python-format
 msgid ""
 "copy_vhd_disk: error when copying disk from source path : %(src_path)s to"
 " destination path: %(dest_path)s . WMI exception: %(wmi_exc)s"
 msgstr ""
 
-#: cinder/volume/drivers/windows/windows_utils.py:290
+#: cinder/volume/drivers/windows/windows_utils.py:302
 #, python-format
 msgid ""
 "extend: error when extending the volume: %(vol_name)s .WMI exception: "
-- 
2.45.2